Add basic sponsorship management module

While there are probably a lot of edge cases left, there are several
pieces of functionality in this:

* Sponsor sign-up. A new sponsor can sign up, and download their contract
  on the site. For low level sponsorship (controlled by a checkbox), they
  can generate and pay their own invoice right away, with an "implicit
  agreement of the contracf". For higher level sponsorships, they can
  download the contract and get instructions to sign it and return by email.

* Sponsorship representative management. This gives each sponsor the ability to add
  (and remove) other of their staff to the sponsorship who will then receive
  all emails, and be able to make selections per below. This should help those
  sponsors that have a more distributed staff, and takes the load off us for
  trying to keep track of it.

* Sponsorship benefit management. This gives each sponsor a chance to "claim"
  benefits, so we don't have to track it down individually. For example, they
  can indicate directly on the website if they want a sponsor table or not.
  This will also include uploading images (the size of which will be
  verified against the rules), generating attendee vouchers etc. There will
  definitely be followups to do manually in the future as well, though
  hopefully less than before.

* A message center. All emails to sponsors should be sent through this, and
  can as such be linked to which levels they go to. They're kept in the
  system, so that when a new sponsor of level X signs up, they can view all
  the old emails to that level that has previously been sent, so we don't
  need to keep track of back-posting those. This also goes for the case when
  a sponsor adds a new representative, per above.

* An admin dashboard (linked from the main events dashboard) from which we
  can track the status of sponsorships and their benefits.

The whole feature has to be enabled by enabling the "call for sponsors" box
on a conference, without that all views will be empty for it. This way
we an incrementally enable it, or just chose to enable it for specific
conferences.

There's definitely more style-work to be done, right now things are just
plain rendered in the main website styles with no adaptions. And certainly
many edge cases and processes that can be improved on :)