HUGE documentation refactor, every method has documentation now