Change all the things

Issues #2, #3, #4 are fixed.

I'll add more comments to this (and update the readme) tomorrow. Need to get some sleep.