Bug 13019 - Add base classes on which to build Koha objects

The idea behind this is to have a pair of base classes on which to build
our new generation of Koha objects. Koha::Object is a base class, which
in it's most basic form, is to represent a row in a table. For example,
Koha::Borrower inherits from Koha::Object. So too could Koha::Biblio
and Koha::Item for example.

Koha::Objects is to represent a way to fetch and manipulate sets of
objects. For example, Koha::Borrowers has a method to get a
Koha::Borrower object by id and a method to search for an get a list
of Koha::Borrower objects. Right now Koha::Objects has only the
essentials but can easily be extended and those enhancements will be
passed down to all the child classes based on it.

By using these classes as a base, we will add consistency to our
code, allow us to keep our code DRY, reduce bugs, and encapsulate our
database access among other benefits.

Test Plan:
1) Apply this patch
2) prove t/Object.t t/db_dependent/Object.t t/db_dependent/Objects.t
Begin work on new ill schema

Start work on a new schema for ill to replace restrictions
on old one CRUD routines in C4/ILL/Request

Includes current ill wip including fixes to screens and
incorrect permissions

TODO
Config to be expanded to allow definition and maintenance of formats
Functionality currently in C4/ILL needs to be ported to use new schema
(C4:ILL could become wrapper for new rtns - no need to change front end
except for mt support

Remove unnecessary sysconfig
ILL: Fixed references to circ-toolbar.inc
ILL: Updated Schema to match best practice
ILL: Added DBIC Result Classes
ILL: Added Koha::Objects
ILL: Added ILL Add button to members-toolbar