Clean up of volunteer handling, de-genericization for cleaner functions

Was doing more scaffolding-like operations with just iterating through lists
of column names and treating everything as text. Switched to using actual
column names and cleaned up a lot of unecessary parameterization.

Based on volunteer coordinator feedback, email and phone info has been removed,
as this was just one more piece of information that had to be copied between
databases, and was extra personal information that this system doesn't need to
be responsible for maintaining (and securing).

Still To Do:
-Category Create/Edit/List
-Hours (the big one)
  -Check In/Out
  -Reporting