revised creation of immutable objects (issue #9)