Implement generic List properties

@jpsim 
doing this the previous way doesn't expose `rlmArray` to Swift users. Could you change it back?