typos, added testing, and should really gitignore things