Push my lame amount of work along with my unconventional and dumb code that I mostly copy-pasted off the internet.
Also, see issue #11