Initial commit with everything done so far.