Changing Orm/Collection to be immutable - all functions return copies