Initial commit, this is a basic working model