Add `base_name` column to `dances` table.

It is just the name of the dance without the style, so for
"International Rumba", the base name is simply "Rumba".
Wrap imports in a transaction.

That way, if they fail, there is no half-filled event.
Alter SQL to be compatible with postgres.
Switch to PostgreSQL database.

SQLite bizarrely fails the `prelim_results` query and Postgres works, so
there.
Explicitly order `round.couples`.

SQLite happened to return the results in order, but Postgres does not
unless explicitly asked.
Fix `Adjudicator` factory shorthand generation.

It was not resetting the sequence, so shorthand letters were generated
which did not correspond to those in the original event.
Discard cached `Round#recalled_couples` on save.

This ensures that if the `Round` is modified, such as by changing the
cutoff, the recalled couples are recalculated.
Merge branch 'use-postgres' into develop

* use-postgres:
  Discard cached `Round#recalled_couples` on save.
  Fix `Adjudicator` factory shorthand generation.
  Explicitly order `round.couples`.
  Switch to PostgreSQL database.
  Alter SQL to be compatible with postgres.
  Wrap imports in a transaction.
  Add `base_name` column to `dances` table.
Use `autoload` for `ResultsScrapers`

Now all that is needed is simply to `require 'results_scrapers'` and the
appropriate submodules are loaded as needed.
Add `twitter-bootstrap-rails` gem.

Also, use release versions of `seed-fu` and `cucumber-rails`.
Install bootstrap assets and scaffold events.

For now, it just Bootstrap-ifies the CRUD interface.
Create "_round" partial to render a round table

For some reason, it doesn't load couples which did not receive any marks
for the round. This has something to do with the `Round.includes` call.
I could try replacing it with a whole bunch small queries. Worry about
scaling later...
Add `quiet_assets` gem.

It removes log messages about static assets, making the log much nicer
to read.
Undo some eager association load in round display

For some reason I can't understand (probably related to the way `LEFT
OUTER JOIN` works), using the eager-loading associations caused couples
which did not receive any marks in a round to be omitted entirely.
Undoing this, and performing a separate query for each cell of the
table, resolves that problem. With enough caching, the performance
should be good enough that the extra queries don't completely kill
things.
Cache the round fragment.

In production mode, this vastly speeds up rendering. Since the round
will not change after it has been built, this is a big win, as the cache
will remain valid forever.
Use `Round` partial to render `Event` results

Now renders the complete event result page!
Remove SASS (using Less instead)

I don't know either well enough to have any preference, but Bootstrap
uses Less, so just go with that.
Add basic borders and zebra stripes for rounds

Makes it much easier to read.
Add some more informative classes to elements
Cache event results pages on event objects.

This way, the page does not need to be rebuilt after the first time.