Bastion (i.e. nutupane^2) [DO NOT MERGE] - Initial PR

Opening a pull request for the experimental work we have done for nunutupane to start getting some review from the rest of the team and testing to ensure we haven't broken non-experimental mode. Things to note:

- introduces a new paradigm: inline engines
- you'll find all the new code in engines/bastion
- the Bastion engine is dedicated to UI constructs only
- this targets an overhaul to the Systems page, but is experimental only since all pages have not been converted
- this work represents a heavy use of client side JS, angularjs and our APIs instead of the traditional UI controllers

##### To test on a RHEL nightly Install

Ensure you have a nightly version of Katello installed on a RHEL box. We are going to override the Katello RPM built with one from the Bastion branch:

    wget https://raw.github.com/lzap/bin-public/master/koji-download
    sh koji-download http://koji.katello.org/koji/taskinfo?taskID=45880
    rpm -Uvh /path/to/download/katello-1.4.3-1.git.134.f22a1be.el6.noarch.rpm 
    katello-service restart

##### To see bulk System data, on a separate machine:

Setup trebuchet

    git clone git clone git://github.com/Katello/trebuchet.git
    cd trebuchet
    rvm gemset create trebuchet
    rvm gemset use trebuchet
    bundle

Now create a Mass Registration configuration file named `MassSystemRegistration.conf` and add

    {
        "system_count" : 50,
        "threads"      : 1,
        "org"          : "ACME_Corporation",
        "environments" : ["Library"]
    }

Finally, populate your Katello server:

    thor trebuchet:siege MassSystemRegistration  --host=<host_where_scratch_rpm_was_installed> -u admin -p admin  -n SystemRegister --config=./MassSystemRegistration.conf --cleanup=false