Cleaned up the standard Request/Response baselines

Created a developer friendly consistent interface for interacting with
RESTful JSON requests and responses. It is now possible to handle a
request which sends additional information then you are able to handle
along with being able to determine what is "dirty" or not and have a
consistent response format with normalized error format/location. Also
includes a cleaner rejection framework as well.

In general a lot of little cleanups to make it easier to work with the
request and response of web service calls easier to work with.

Squashed commit of the following:

commit 096d9bb8cd9cfed5e8d1dc0eec5fe16bb240a5d4
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Wed Jan 15 10:05:30 2014 -0500

    stop on error condition

commit 4fd7422f6213cc066688f23d86348b86ad64d8ce
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Wed Jan 15 09:59:50 2014 -0500

    Any request with response 400+ should have errors array

commit d5b523d0d70e4075f23de3bc6d1b52a5bf9d9d49
Author: Sejal Patel <sejal@inigma.org>
Date:   Mon Jan 13 23:52:42 2014 -0500

    Added some clarity around error/rejections

    Renamed hasError to isRejected and created isErrorCondition to do the
    combination check of rejection and unsuccessful http status.

commit 0a990b6ef5cbe8a12dfd7516f7b69cc2b0efd946
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 13 10:09:32 2014 -0500

    force errors array if error http status

commit 202daed877163e018d63ff80f81dcc193ec7efea
Author: Sejal Patel <sejal@inigma.org>
Date:   Thu Jan 9 23:18:05 2014 -0500

    Minor adjustments to the api implementations.

    Mostly cleanups

commit fc6abcaa8867edffa12d6427aeaa1a2459525234
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Wed Jan 8 14:51:41 2014 -0500

    formatting

commit 4eaa9a520ed66ae5a5204645c61104a3563af820
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Wed Jan 8 14:50:23 2014 -0500

    guava and other fixes

commit 8b85eed1da7d5af8c2d60e66cf3b84da9c874113
Author: Sejal Patel <sejal@inigma.org>
Date:   Wed Jan 8 12:56:28 2014 -0500

    Some updates to the developer APIs. Untested.

commit 08464511678406836f631b3e65d05180157b877e
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Wed Jan 8 10:17:16 2014 -0500

    new respone special handling types

commit f36e8311da5476baa28be9a0bc9a17ab4db2cbfd
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Tue Jan 7 11:33:49 2014 -0500

    improved AppendOnlyList

commit 090d6c7b9aa5ed9b2de58c6c3b5e36c2bdd09cc7
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 17:02:53 2014 -0500

    fix express parsing

commit 3514b0d38552a8076f417f4bf58ab2eb483381c6
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 14:45:30 2014 -0500

    minor changes

commit 725a0c395433f8b6fb0660a35465d1edfbf78c8e
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 13:05:44 2014 -0500

    formatting

commit 5c6552804414d9d234c0902f3c965562c776a856
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 12:31:27 2014 -0500

    make errors more extensible

commit 7c24219ad63a46de0971a161124fc4dbf2b56195
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 12:20:16 2014 -0500

    make errors more extensible

commit 15817fb1e28629766eb29e74cc31fc223bd4d71e
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:53:08 2014 -0500

    formatting

commit d178fa6b5c6e011eb5f90f6515c81bc653b32299
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:52:10 2014 -0500

    add feature for extensions of GlobalError

commit 2d99bf6f84110581d95857dc30005ccc5e26c9ca
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:49:29 2014 -0500

    hide response object for certain exceptions

commit b5e1488d7c4ffaf73b6129c1040bfc680de148e0
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:47:14 2014 -0500

    remove dup code & unnessary parm passing

commit 3bb5039ecaa177588181695e026b3d4104fcb3ad
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:41:22 2014 -0500

    remove dup code & unnessary parm passing

commit 7d31b257a70e928d6626ca56cc1e74d0f81b57ba
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:37:34 2014 -0500

    remove dup code & unnessary parm passing

commit b6efc207e2e6aa6661a743dd753dd4c71ecf0465
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:34:05 2014 -0500

    bug fix

    Didn't update error path to match happy path.

    Refactored for DRY

    Refactored to remove unncessary parm passing

commit e25cf9c2b4e21e7f0e9a5409f948198a5ba79988
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:19:26 2014 -0500

    formatting, i think

commit c9909bc4e6f849d78e39fc2006f99c97f853e748
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 11:06:50 2014 -0500

    ResponseException to inner class of RestService

    RestService is the only class that needs to be aware of
    ResponseException.

    RestService is already knowledgable of the ResponseObject. It doesn't
    need to pass it through the exception back to itself. This is consistent
    with HttpServletRequest being the authorative source of state data.

    Perhaps stopImmediately could benefit from convienance overloads that
    also setResponse(...).

commit f45a74938dbdffa8d573c0c49f3207fe45acc3ce
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 10:59:03 2014 -0500

    special handing for map and string responseObjects

commit bce323a94b1e80a646d7ecad7d024afdcfbcdda2
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 10:50:22 2014 -0500

    Renamed createRequest to getRequest

    createRequest didn't parallel createResponse. createResponse changes
    state, thus it is in appropriate to call it a get. Ex: getResponse has
    been added to retreive the last created response.

    getRequest can be called multiple times with no side effects. It
    behaves like a get.

commit a6cea5553b263b9d673bc7901541a54cbe61a7e5
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Mon Jan 6 10:42:38 2014 -0500

    bug fixes & allow manual response construct

commit f40b9eccc8f3cd36d7b31d5069cc5c977949e7b5
Author: Sejal Patel <sejal@inigma.org>
Date:   Sun Jan 5 11:15:31 2014 -0500

    Added another response convinience method

    It was becoming quite common that a need for setResponse followed by a
    return response() was being used so added a method to do both for ease
    of use.

    Also renamed CryptoService to CryptoUtils since a Service name would be
    confusing with the WebService name extension. Plus it is actually a
    utility for working with RSA cryptography anyway. CryptoService will
    still work for now but has been deprecated and will be removed before
    version 1.0 is released (maybe even sooner then that).

    A few other minor cleanups here and there.

commit f099efa931b71d493509b124eeb33ef5f24855f9
Author: Sejal Patel <sejal@inigma.org>
Date:   Sun Jan 5 01:53:27 2014 -0500

    Fixed issue with deep nested field checks

    SPEL on maps doesn't work as well as on solid beans. Replaced with dumb
    down version of it taking advantage of known fact of Map structures.

commit 6be27dd8bf24051bfbcb75854220acf2b3b15767
Author: Sejal Patel <sejal@inigma.org>
Date:   Sat Jan 4 14:39:17 2014 -0500

    Fixed issue with not creating response correctly.

    Non-accessible and inner classes were causing issues. Now as long as it
    is a proper model object (no arg constructor) it will work fine.

commit 6ffa4ddb0bfd31355fc07fa5ee598fc09d4f89df
Author: Sejal Patel <sejal@inigma.org>
Date:   Sat Jan 4 13:58:47 2014 -0500

    Refactored the design implementations

    Also fixed up MessageService and added some security measurements in
    place to prevent external library maliciousness or at least voodoo
    magic.

    Also fixed up response inability to handle non-object types.

    Mostly renamings and minor cleanups.

commit 79e94904a2f0e5f07722d75ec50706946c171c63
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Fri Jan 3 14:57:32 2014 -0500

    Applied New RestService

commit 78b55f5b970ad456bbb12b1ff055375368013de3
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Thu Jan 2 15:02:30 2014 -0500

    include request with errors

commit db147ffa0d9449dc19ae42c2a8cbf2ff6e4d7dfe
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Thu Jan 2 09:45:54 2014 -0500

    changed static only class format

commit f36de8c1e7bea674a25743c4bf6bb5d7696f510f
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Wed Jan 1 23:19:38 2014 -0500

    meta on response error

commit e2df96a464c40c5ed0c46a1c43c42cc902d95fb0
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Wed Jan 1 23:04:39 2014 -0500

    hard classes with static utility

commit ea382e2ecd64d404ebd466327213737b09c306f1
Author: Grant Overby <grant.overby@stratixcorp.com>
Date:   Wed Jan 1 21:08:28 2014 -0500

    proxy

commit 3f88385019663629a03967eb6861a66cca694719
Author: Sejal Patel <sejal@inigma.org>
Date:   Sun Dec 29 23:20:51 2013 -0500

    Upgraded spring version to 3.1.4 (from 3.1.3)

commit bf443d4b144b516c5ea70a8c307f6622525f0403
Author: Sejal Patel <sejal@inigma.org>
Date:   Sun Dec 29 20:58:56 2013 -0500

    Added maven plugin for dynamic versioning

commit 7422de161d03adf74def629ef14e2028c3551b59
Author: Sejal Patel <sejal@inigma.org>
Date:   Sun Dec 29 18:48:28 2013 -0500

    Bumped the version number

    This is a non-backwards compatible set of changes for the most part. A
    major rework to clean up a lot of lingering issues and nice to haves.

    While it will probably in most cases still work as before (since it is
    only deprecated currently) it is most definitely paving the way to
    break currently existing implementations unless they upgrade to the
    newer means of working with the infrastructure.

commit 099667208b5c4dcb4a32014b4400448c32e918e7
Author: Sejal Patel <sejal@inigma.org>
Date:   Sun Dec 29 18:41:40 2013 -0500

    Cleaned up the standard Request/Response baselines

    Created a developer friendly consistent interface for interacting with
    RESTful JSON requests and responses. It is now possible to handle a
    request which sends additional information then you are able to handle
    along with being able to determine what is "dirty" or not and have a
    consistent response format with normalized error format/location. Also
    includes a cleaner rejection framework as well.

    In general a lot of little cleanups to make it easier to work with the
    request and response of web service calls easier to work with.

commit c9734f5a67bce558091f157a8ac21bce31ea14fc
Author: Sejal Patel <sejal@inigma.org>
Date:   Sat Dec 21 02:05:12 2013 -0500

    Initial untested commit of various modifications

    Working mostly on the ease of use. Have not executed and validated the
    stability of the code changes yet.