massive refactor

most things seem to be working, but there's bound to still be bugs.
lots of bug fixes
check name conflicts on login
just some changes in the comments