Janx2/collected improvements

This builds upon #8 and #9, refactors the getter/setter functions and adds support for objects/classes conforming to NSCoding.