Removed some legacy code to clean up project.
Major code refactor to prepare for Android development.

Had to add functionality to deal with the issue of security.  Added a method to generate a 32-char security key to protect the server from being attacked by HTTP requests.  This also formalizes the methodology for finding a clue on the Android side.

The data encoded into each QR Code is a JSON Array with collection "data", containing fields "clueid" and "cluecode."  clueid is the unique integer that differentiates all codes on the server.  cluecode is a randomly generated string associated with that clueid.  The Android app should then be capable of scanning the code, parsing the received data, and then sending a request to the servlet to verify whether this code is valid for this clueid.  If true, the servlet can post on behalf of the user that the clue has been found.  If false, it can return a failure message.

This implies that the Android app will have the ability to scan a QR code, and be capable of forming a request to the server using the data from the code as parameters in a request.