Support subclassing RLMObjects

Does not support polymorphic behavior.

@tgoyne 
Does this mean the following isn't supported?

```
class Parent: RLMObject {
  dynamic var child = Child()
}

class Child: RLMObject {
  dynamic var name = ""
}
```

This is setting a property (`child`) to an instance of a subclass (`Child`). It seems like an arbitrary limitation and am curious as to why that's not supported.