Generated documentation and started refactoring board to use the Flyweight pattern