Refactoring Profile to its own class

Instead of marking Profile as type of Collection, it is instead
being setup as something which can have collectables. The
ProfileSection will also need to be extracted as it is presently
a type of Collection.

Adding membership questions/answers. By using double delegation we can
make sure to instantiate both the collection and the member and allow
the member to answer whether it can be collected by the collection.

Adding Collections as Collectible.

Closes to #262