Implement generic List properties

@jpsim 
I don't like that this has to be called every time an object is created. I'm worried we will forget to call this in future code changes. One way to improve this would be to have a new method perhaps called ```RLMInitializeAccessor(RLMObject *object, Class accessorClass)``` which calls this and object_setClass, as every time this is called we are also setting the accessor class. Any other common accessor initialization code should also go in this method.