Changed Agent and Character constructors so they accept options
DecisionMaker now singleton, addItem and removeItem methods for Characters
Added CharacterManager and updated main.js test file
Changed extend to defaults in Agent and Character constructors
Better demo code
Characters now mate, inherit surnames (seems to favour mother's surname at the moment?), better demo. Tests probably broken