Add Optional Security to PBC and HTTP messages

To set up the cluster you can:
- `./setup.py preconfig_secuirty --riak-conf=<path to riak.conf> --advanced-conf=<path to advanced.config>`
- Start cluster
- `./setup.py setup_security --riak-admin=<path to riak-admin>`
- `./setup.py create_bucket_types --riak-admin=<path to riak-admin>`
- ./setup.py build
- `SKIP_INDEXES=0 RUN_SECURITY=1 RIAK_TEST_SECURITY_CACERT=<path to cacert.pem> ./setup test`

The following tests are known to fail and are due to a KV issue https://github.com/basho/riak_kv/issues/917
- test_clear_bucket_properties
- test_primary_quora
- test_rw_settings
- tearDownModule

The following test fails due to another KV issue https://github.com/basho/riak_kv/issues/918
- test_if_none_match

This one needs more investigation in the morning
- test_index_timeout