Added support for non-BasicEffects for the Blocks

This required moving some parameters inside the GetEffect method, but
that's OK.