Evergreen ILS holdings improvement

The Evergreen driver was passing in the record ID but returning the copy
of the same ID, meaning that not only were the wrong copies being
returned for Evergreen holdings, but only one copy maximum was being
returned.

In addition, rather than interpolating strings into SQL for a possible
SQL injection attack, use parameter markers for the prepared statements
and bind our variables to those.

Signed-off-by: Dan Scott <dan@coffeecode.net>
Evergreen driver: patron login and profile

Enable users without an address on file to be returned from the
patronProfile() method. Also, return the name of the user's profile
group rather than their user group ID.

Use parameter markers instead of interpolating variables into the SQL
statements.

Signed-off-by: Dan Scott <dan@coffeecode.net>
Merge pull request #23 from dbs/evergreen_driver_enhancements

Evergreen driver enhancements: holdings & patrons