Adds code behind deposit GUI

This commit adds the code behind the deposit GUI. Included is adding
new users by deposit, showing autocomplete for usernames/character names
entered, and adding the deposit to the database.
Centralizes socket state detection

This commit centralizes the detection of the socket being connected or
disconnected. Thus, individual scripts do not need to test for the state
before attempting to use the socket. This also fixes a problem where
the socket was being opened multiple times.
Makes /index redirect to /drawing/{id}
Adds a full data sql script

This commit adds a sql script that inserts a full data set that is
required for testing actual drawing algorithms.
Attempts to fix issues with extended character sets and Hibernate

Hibernate defaults to using whatever encoding the JVM is set to. You
can configure the encoding that Hibernate uses for most queries, but
you cannot configure the encoding hbm2ddl uses for creating schemas.
This commit fixes it in places where it can and adds a note where it
can't.
Creates "admin" websocket paths and converts code to using them

This commit creates a separate endpoint for admin functions. The code
that was already written for admin functionality is also converted to
use these new paths.
Stubs out interface for running a drawing
Restructures adding and tracking entries

This commit restructures the way entries are added and tracked. This is
to make facilitate handling the possibility of a user making enough
entries in the small pool to push his entries into the large money
pool.
Makes drawing interface away of an in-progress drawing

This commit makes the drawing view aware of the drawing being currently
in-progress. Most elements now show appropriately for this drawing
state. Others still need work, but their features really haven't been
implemented yet anyway.
Fixes template bugs

This commit fixes some null logic bugs in the drawing templates. The
Thymeleaf documentation claims that it converts null values to false,
but it clearly lies.
Adjusts the tracking of entries (again)

This commit adjusts the tracking of entries so that they are associated
with both a drawing and a tier. It's possible they will be adjusted
again to only be associated with a tier (as a tier is already associated
with a drawing).
Implements drawing of prizes (not money)
Adds display of winner's name and the item during drawing

This commit adds support for display who won what item while the drawing
is underway.
Adds display of winners and won items on page load

This commit adds support for showing who won what items when a drawing
page is loaded.
Removes draw buttons from tiers with no entrants
Adds support for adding entries before starting and fixes bugs

This commit adds support for adding last minute entrants and then
clicking the "start" button.

This commit also fixes several bugs with the prize drawing
implementation. In particular, the correct shuffled entry was not being
picked on draw.
Fixes bug with won items highlighting

This commit fixes a bug where won items were not being highlighted
properly on page load.