Fix for 144 - refactor blocks

Keeping the deep copy boilerplate contained makes sense. Cool. Thanks for clarifying.