Pull Request for base code commits. 

Not completely done with this today, but I don't want to make multiple pull requests in the event that I make some change that can't easily be merged. 

Also, none of the commits done for this work are being tracked on my GitHub, since my tool is listed as a fork of this repository. Not sure if that'll be a problem further down the line...? It may just make it look like no one is working on their stuff.