Keeping the expands and extensions lists "clean" so they can be properly serialized. Added methods for adding an expanded game or an extensions; the properties 'extends' and 'expansions' of BoardGame still return lists of Thing
Collection: if there's anything in kw['items'], add them from __init__
Properly adding extended games/expansions
Changed _add_game -> add_game
Adding any initial hotitems from kw['items']
Refactored _add_play -> add_play and adding any initial plays from kw['plays']
Made some User private methods public and adding any initial hot/top items
Raising BoardGameGeekError if missing any data when creating a Thing