Split RLMObjectBase off from RLMObject

We don't want want Swift objects to have all the obj-c API things, so
RealmSwift.Object can't inherit from RLMObject. Move all of the objectstore
machinery to RLMObjectBase, and make RLMObject only have the public API.
Rework how RealmSwift is compiled