added 'Color.new(otherColor)' and safe_malloc
'low level API' is now optional