add blockCons, blockSnoc, and a bit of refactoring