Rewrite public interface for Mongo and clean up
By default, don't encode or decode fetched properties
Clean up properties and fix retain-release issues
Prefix private methods with underscores
Fix after rename
Fix after rename