Add documentation, fix npm install failing, fix missing semicolons, spelling errors

Nothing too major, view the commit messages for a break down.