Fixes issues with uchiwa 0.3.2

Previous PR shipped uchiwa 0.3.2 however some behaviour skipped
my attention. Uchiwa uses websockets so we need to get our nginx
to upgrade the connection to Websocket when proxying. Also uchiwa
needs to point to public HTML directory via -p switch.
Make sure sensu.conf nginx config is no longer present after upgrade

Also updated formula-requirements dependencies
Upgrade uchiwa to 0.3.2
Merge pull request #46 from ministryofjustice/uchiwa-fix

Fixes issues with uchiwa 0.3.2
update CHANGELOG"
Check definitions from pillar data

These are largely in the same formats expected by the respective macros,
but with named parameters in all cases (bar the check 'name', which since it
must be unique is the key to the check definition).

This allows for pillar data along the lines of:

```
sensu:
  check_definitions:
    graphite_carbon_queue:
      type: graphite
      target: 'carbon.agents.*.cache_size'
    postgres:
      type: procs
    udevd:
      type: procs
      playbook: http://example.com/procs_playbook
    echo_hello:
      type: basic
      command: 'echo hello'
```
Standalone checks require restart of client...

... and regular checks require restart of the server components

This fixes an issue where checks defined on the sensu clients --
namely standalone checks -- would error due to being unable to
watch_in the (unincluded) sensu-server state.
Always quote the graphite target metric_name

There is no reason not to, and it means less accidential errors
in the definition (eg when brackets are used).
Add ability to install 'embedded' gems for Sensu

Many of the sensu community plugins require RubyGems to be installed,
for example the redis and mongodb checks require 'redis' and 'mongo' gems
respectfully.

Allow the user to set which gems are needed on a per-role basis, so not
to slow down Salt.
Add apparmor playbook, fixes #42
update CHANGELOG
Fix apparmor warning message
Update docs regarding checks-as-pillar-data