Restored InstanceVariableSetter#allow_attributes

…and added (hopefully) much better docs. The fact that neither current
client uses the block-initialisation usage isn't (necessarily) an
argument that they're too tightly coupled to this code; it's an
(incorrect, in UserEntity's case) declaration that all ivars can be
treated exactly the same for purposes of initialisation. Oops.

RSpec: 708 examples, 0 failures
RuboCop: 181 files inspected, no offenses detected