Many changes. Now

- saves the hit id in the db for responses, since that could
  potentially be valuable information later

- gives a progress indicator to users so they know how far into the
  tasks they've gotten

- hides modules not currently being answered. Created a module manager
  to handle this

- validates form input, giving appropriate feedback when questions
  aren't yet answered (ties into module manager to show correct
  module, too)

- makes the multichoice render sideways automatically if the options
  are all <= 2 characters and if there are at least 5 options