Initial commit - it's a mess.