add default value as lambda option in active hash

Right now the way defaults work is that the value passed to default is initialized at class level.
This works fine for values but does not work for objects like hashes.

I have made it conditional to test if default assignment is a lambda, and calls / assigns field if it is. This allows you to declare a Hash as the default value, with that Hash being scoped in instance rather than class.

I haven't looked at this behavior in modules other than the ActiveHash one.