Fix Hashie::Dash Defaults

Previously, a Hashie::Dash's property's :default value was used by all instantiations.
This change calls .dup on all non-Numeric default values during instantiation, rescuing from TypeError.
Concisely handle TypeError in Hashie::Dash