Bug 10565: Add a "Patron List" feature for storing and manipulating collections of patrons

The patron lists feature is somewhat similar to the record lists feature
in that it allows a librarian to create a list of patrons for later
retrieval and manipluation. These lists can then be used with the batch
patron modification tool.

Test Plan:
 0) Apply the patch for Bug 8798
 1) Apply this patch
 2) Run updatedatabase.pl
 3) Access the patron lists feature from Koha's Tools menu.
 4) Create a new list via the "New patron list" button.
 5) For this list, click the "Edit" button, and change the list name.
 6) For this list, click the "Add patrons" button, and search for and
    add some patrons to your list.
 7) For this list select some patrons to remove them.
 8) Try both adding some new patrons, and removing some old patrons
    as a single action.
 9) Click the "Patrons" link on the Koha toolbar
10) Search the patrons, or browse by letter to get patron results
11) Check the checkboxes next to one or more patrons, and add the
    selected patrons to your existing list.
12) Change the "Selected patrons" pulldown to "All resultant patrons"
    and add them to your list.
13) Check the checkboxes next to one or more patrons, and add the
    selected patrons to a new list.
14) Try manipulating a list of patrons using the batch patron
    modification tool.
15) Go back to the Patron Lists feature and delete your lists.
16) Run 'prove t/db_dependent/PatronLists.t'

Signed-off-by: Nora Blake <nblake@masslibsystem.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10565: (follow-up) don't assume borrowernumber 1 exists in unit test

Signed-off-by: Nora Blake <nblake@masslibsystem.org>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10565: DBrev 3.13.00.031

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10565: (follow-up) refresh DBIC schema class files

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 15065: (follow-up) update license header

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10565: (follow-up) use datatables.inc

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10565: (follow-up) make add list/edit list labels sensitive to context

This patch fixes a problem where the form for editing an existing list
would be labeled as if a new list were being created.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10565: (follow-up) add new user permission for patron list management

This patch adds a new user permission for patron list management,
tools => manage_patron_lists.

This closes a security issue with the original patch series where
patron lists and their contents could be retrieved and modified
without requiring authentication of any sort.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10565: (follow-up) improve navigation aids

- add links to Tools home page in breadcrumbs
- add patron lists to the tools sidebar

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10565: (follow-up) ensure that new patron_lists/ CGI directory is installed

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10096: (follow-up) fix typo introduced in previous followup

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 8798: (follow-up) remove DBIC_DONT_VALIDATE_RELS

This corrects a failing test and follows a recommendation
by the maintainer of DBIx::Class.  This patch also
adds a couple new directories for t/00-testcritic.t to
check.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>