Major refactoring and re-design

The old design wasn't very extensible or domain-driven, so I've
redesigned it a bit. So far, only the League domain object is somewhat
solid; the rest will still need significant changes, but the general
structure of the storage is there.

Additionally, did a little UI work. Not much, but it's something.
Update gitignore

I put all my old source in old/*... and I don't want to see it anymore.