Memory allocation failures are now done through exceptions, not return status. Changed value copy semantics from shallow to deep.