Adding documentation and some basic lint changes.