First draft, almost complete. Needs work though.