Add possible location data to the schedule.

Intended to help shepherds.

Change-Id: I5673811de9362067252dccc06261c41e5d09089e
Add some CSS.

While it might be nice to have this in a separate repo, it's
vastly more convenient to just bung it here for the moment.
The whole lot needs re-organising at some point, so we can deal
with this then.

Change-Id: Idd2265a255630a8b87548b0d2c2e95fc5623c582
Add a button that toggles the highlight of the locations.

Only shows up when there are locations to show.

Change-Id: I8dd53c5c062f0ef42618a03b5c64201b42a761ec
Add the locations from this year, plus demo CSS.

Not the right way to store this data, but gets things going
for now.

Change-Id: I089a16e0605c2d95617f0025b2731e181249960c
Check the requested team upfront.

This avoids a DB query if it isn't present, which saves
the user a noticeable amount of time.

Change-Id: I9c48ff7030eb7f86b4b168168858f0e752d19f46
Make table headings optional.

So we can use the same logic for tables that don't want them.

Change-Id: Ic8332698d67c6a61367fd514bef334db332d0c0d
Add filtering & other options to allow greater control.

Change how the html schedule is implemented so that it uses the common
rendering class, and make use of the new filtering mechanism to only
list the small number of matches it actually wants.

Change-Id: Icf7b07d49c4b6a656653e3aa171573676c3adc1b
Add a display of a team's matches.

This relies on a new filter also added in this commit.
The script can either create a schedule for a given team, or for all
teams (in which case it dumps them into files name for the team's id).

Change-Id: Ib9e9cf9c8340e3592ca5765263ca7e399ea5f643