Propery added concept of types to engine and game

Not sure if this data model will stick, but it
works for now!

There are now 'Type' objects in the game's
content.json. These are created from a template
in the engine.json. For now these objects only
have two functions:

1. Create restrictions on content based on
character traits. For example, make it so that
swords can only be used by fighters, or an ice
spell can only be used by females, etc.

2. Define some field on a piece of content based
on its type. This is for situations where you want
to create subcategories of schemes. For example,
you do not want to separately define the defense
rating of every piece of armor. Instead, you want
all metal armor to have defense = X, and all
leather armor to have defense = Y, etc.

There are some limitations as to the sort of data
you can use in these two cases, and the parser will
need to be smart about certain cases.
Updated the addContent module

addContent can now add content!

Loose thread: Need to re-create the update_LISTS
method. There is a big dictionary of lists in
content.json for easy searching. Whenever new
content is created, the name has to be added there.
Should be a quick patch.