Destroy dependent associations on models

The destroy associations are:

  - Adjudicator: marks
  - Competition: events, adjudicators
  - Couple: marks
  - Event: couples, rounds, sub_events, placements
  - SubEvent: sub_rounds, sub_placements
  - SubRound: marks
Foreign key deletion constraints on associations
Quote `order` field of `SubEvent`

Leaving it unquoted causes problems for SQLite.
Re-add SQLite for testing on CS lab.

The CS lab does not have Postgres available, so, in order to work on
Railskating, it needs to run on SQLite.
Disallow destroying Marks except through SubRound

This prevents deletion of Adjudicators or Couples when they still have
associated Marks. In order to destroy the Mark, the SubRound has to be
destroyed.
A few specs for model destruction dependency.
Add dev/test dependency on `mysql2` gem

This is mainly for Travis.
Remove duplicated keys from "db/schema.rb"
Force ordering of some associations.
Properly use Rails logger for importing

Outside of Rails controllers and models, the logger has to be referred
to as `Rails.logger` rather than simply `logger`.
Rename `sub_events.order` to `sub_events.weight`

This solves the problem of the column name conflicting with the `ORDER`
SQL keyword.
Modify `order` calls to hopefully appease MySQL
Change Rspec format to "documentation" on Travis

It's more verbose and useful for CI.
Try to get Travis to use the cache.
Merge branch 'destroy-dependents' into develop