large project re-factor, more documentation going forward, factories replace individual entity classes