Initial commit, basic functionality with a few bugs and very little done in regards to design