Update tempest hacking regarding unit tests

This commit just updates some of the hacking documentation around unit
tests. It also adds a new hacking rule to ensure that setUpClass isn't
used for the unit tests.

Partially implements bp unit-tests

Change-Id: Ie8b1c9f1312a467265d53bc28ee905fa1b5fbb53
Add testcases for volume

Adds tests for those GET API functions that accept params

List_volumes and list_volumes_with_detail for nova volume extension
List_volumes and list_volumes_with_detail for Cinder API
List_snapshots and list_snapshots_with_detail for Cinder API
Fixed typo in volume snapshot json client to make it consistent
with the corresponding xml client method "list_snapshots_with_detail"

Partial-Bug: #1086590

Change-Id: Ie703fa8729d838203c12293a7ce1ce942ec83a81
Add new env variable to specify test path

This commit adds the env variable OS_TEST_PATH to specify the test
discovery path for testr. This can be used to specify which path will
be used for test discovery.
Closes-Bug: #1260710

Change-Id: Idcc8f6b5d82a2adc1a1f8ad04a47e8d694dc7de7
actually turn on neutron cli tests

the cli tests for neutron were never running in the gate,
because neutron doesn't run a full run, so these had to
be marked as smoke tests. This is getting old....

Change-Id: I1bb61e357a5f1dc30345771bf12732d3461311f9
Test for the agent management extension API

Add tests for neutron API '/agents'.

Change-Id: Ifd27abf67f8e22eb2a91bbf77c6536066c4acf62
Merge "Add new env variable to specify test path"
Merge "actually turn on neutron cli tests"
Merge "Test for the agent management extension API"
Merge "Add testcases for volume"
Merge "Update tempest hacking regarding unit tests"