Added documentation, docgen to Makefile, and Generator