Initial routing tests.

These are starting to check that the proper routes have been defined.
The routes already should have been there, but this just
double-checks.  This could be more helpful down the road if we don't
define all the REST-ful routes, but depend on a subset.
Merge branch 'master' of https://github.com/geisler/game_contest_server into in_class
More sophisticated validations of referee and contest

These tests make sure we are not putting bad values into the referee
or contest.  They are more complicated than the previous tests because
they consider the application logic and not just existence of data.
For example, the contest deadline must be in the future and the start
of the contest cannot start before the deadline.  There are several
other similar validations like this that just make sense when thinking
about the values that can be stored for these entities.
Merge branch 'master' of https://github.com/geisler/game_contest_server into in_class
Passing all new tests!