Separation of Concerns

Split the single project into multiple modules. This causes users to not
be forced into having to bring along jdbc or mongo libraries for example
when utilizing the framework. Helps to support leaner, cleaner coding
initiatives.

Squashed commit of the following:

commit 1a16feb93842dbe647bc95b8d926f223825d280a
Author: Sejal Patel <sejal@inigma.org>
Date:   Tue Nov 13 00:02:51 2012 -0500

    Disabled Controllers and Refactored Mongo Message

    The message infrastructure was very mongo specific so it made sense to
    migrate it into the mongo specific packaging.

    The controllers were all disabled in their annotation basis to prevent
    any kind of component autoscan from trying to auto-register them. They
    could be considered a bit sensitive with such things as configuration
    management and mongo uptime detection. Plus several of them were heavily
    dependant upon the mongo package as they are implementations of features
    utilizing the mongo system.

commit aa0d6de7c7af0163784ed9b26dfb4383ba674a00
Author: Sejal Patel <sejal@inigma.org>
Date:   Sun Nov 11 17:14:43 2012 -0500

    JdbcTemplate which supports returning null

    By default, springs jdbc template will return an exception when you
    locate zero records and are asking for 1. Many systems from my
    perspective seem to create a bunch of unneccesary "try/catch" blocks
    around each subquery that may not have the needed result. And thus it
    takes the results of an empty record and marks them as null for beans.

    It makes much better sense to have a version of the JdbcTemplate which
    will simply auto return null and thus keep the code much cleaner and
    more maintainable. Null is an easier thing to deal with a lot of times.

commit a0469f5fed09dde14bea3eb3a64d33fbf17c5748
Author: Sejal Patel <sejal@inigma.org>
Date:   Sat Nov 10 12:29:18 2012 -0500

    Slight CORS cleanup to support lazy frameworks.

    Not all frameworks will remember to send the RequestMethod call on the
    OPTIONS call and so it is sometimes important to respond back with the
    full suite of REST supported calls.

commit d47c6e3025808cd1ab8f1f0f83db8f3bcf02c7f7
Merge: 8f028a7 0c9c957
Author: Sejal Patel <sejal@inigma.org>
Date:   Fri Nov 9 18:57:41 2012 -0500

    Merge branch 'master' into split-dependencies

commit 8f028a7920da2487a8cfbdcf8c9f6fd3562c0724
Author: Sejal Patel <sejal@inigma.org>
Date:   Fri Nov 9 18:53:28 2012 -0500

    Allow access to the internal monitor and counter.

commit 0af02ab56a3b8cd7aeb02d641b95ac8ba2d1eed3
Author: Sejal Patel <sejal@inigma.org>
Date:   Wed Nov 7 22:35:12 2012 -0500

    Improved the equality check of primitives

commit b0bfa82cffefd324e4bcd1e8758b2a6add1ab639
Author: Sejal Patel <sejal@inigma.org>
Date:   Tue Nov 6 00:05:44 2012 -0500

    Further corrections on the project splitup.

    Also have a successful build with compilation and testing in place.

commit f775d86621ba2e1c988d92eb1878f753fa89b4d3
Author: Sejal Patel <sejal@inigma.org>
Date:   Mon Nov 5 23:41:45 2012 -0500

    Refactored the codebase into modules

    This helps keeps unneccessary dependencies from being mandated. Such as
    having to have mongo even if the application has nothing to do with the
    mongo system. Or having to have jdbc drivers and pools for a pure mongo
    application.

    It should also help promote good design pattern separations and basic
    abstraction needs by enforced separation of concerns.