First commit - Created the basic code and added some simple validation