LP#1350042 PCRUD access for various IDL classes

These changes are mostly data retrieval and help support
PCRUD/auto-grid-style retrieval of certain patron data.

Classes affected:

actor::workstation
money::billable_transaction_summary
actor::usr_note
money::credit_card_payment
money::open_billable_transaction_summary
money::cash_payment
money::forgive_payment
action::hold_notification
money::credit_payment
config::non_cataloged_type
money::billable_transaction
money::work_payment
money::goods_payment
money::check_payment
money::payment
money::billing

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1350042 streaming patron search API

Adds an API name-based option to the standard patron search API to
respond with a stream of fleshed users, so the caller is not forced to
make additional fetch-by-ID calls to collect the user data.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1350042 streaming holds pull list API

Adds an API name-based option to the standard holds pull list API to
respond with a stream of fleshed users, so the caller is not forced to
make additional fetch-by-ID calls to collect the holds data.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1350042 detect is-staff mode for browser client

The browser client does not pass an OILS-Wrapper header to the embedded
catalog (etc.) so consider the presence of a workstation an indication
that the TPAC should operate in staff mode.

NOTE: this may require some additional thought, since this means all
TPACs within an authenticated browser will run in staff mode, which may
not be desired.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1350042 browser client apache config additions

* Location configuratoin for /eg/staff templates
* Support for "stop-at-index" in EGWeb, so that navigating to "/eg/foo"
  can result in /eg/index.tt2 getting served.
* Cache and compress additions for /js files.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1350042 link opensrf websockets JS scripts

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1350042 make_release -c for building browser client

Adds support for fetching JS dependencies, minification, and
building of the experimental browser client via new -c option.
Browser client building is disabled by default.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1350042 Browser client templates/scripts (phase 1)

 * Templates in Open-ILS/src/templates/staff/
 * JS files in Open-ILS/web/js/ui/default/staff/
 * Also includes a few TPAC modifications for embedded mode
 * Resurrects the pre-XUL user permission editor

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1350042 add missing ui-bootstrap dep to Gruntfile

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Ben Shum <bshum@biblio.org>