First commit, I will be be cursing a lot here, hope no one minds....