Giant and Unfinished Commit

I'm committing this so I can work on it at work. Everything still lacks
polish, but the items are mostly complete.