Small fixes to syntax
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 32935ec..5a475af 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,5 +1,10 @@
 # Contributing to gophercloud
 
+- [Getting started](#getting-started)
+- [Tests](#tests)
+- [Style guide](#basic-style-guide)
+- [4 ways to get involved](#4-ways-to-get-involved)
+
 ## Getting started
 
 There should be no fundamental differences of setup between contributors and
@@ -33,17 +38,16 @@
   "github.com/rackspace/gophercloud/testhelper"
 )
 
-
 func TestSomething(t *testing.T) {
-  testhelper.AssertEquals(t, "expected", "actual")
-}
-
-func TestErrors(t *testing.T) {
   result, err := Operation()
 
   testhelper.AssertEquals(t, "foo", result.Bar)
   testhelper.AssertNoErr(t, err)
 }
+
+func TestSomethingElse(t *testing.T) {
+  testhelper.CheckEquals(t, "expected", "actual")
+}
 ```
 
 `AssertEquals` and `AssertNoErr` will throw a fatal error if a value does not
@@ -53,7 +57,7 @@
 
 Here is a truncated example of mocked HTTP responses:
 
-```
+```go
 import (
 	"testing"
 
@@ -62,21 +66,22 @@
 )
 
 func TestGet(t *testing.T) {
+	// Setup the HTTP request multiplexer and server
 	th.SetupHTTP()
 	defer th.TeardownHTTP()
 
 	th.Mux.HandleFunc("/networks/d32019d3-bc6e-4319-9c1d-6722fc136a22", func(w http.ResponseWriter, r *http.Request) {
 		// Test we're using the correct HTTP method
-    th.TestMethod(t, r, "GET")
+		th.TestMethod(t, r, "GET")
 
-    // Test we're setting the auth token
+		// Test we're setting the auth token
 		th.TestHeader(t, r, "X-Auth-Token", fake.TokenID)
 
-    // Set the appropriate headers for our mocked response
+		// Set the appropriate headers for our mocked response
 		w.Header().Add("Content-Type", "application/json")
 		w.WriteHeader(http.StatusOK)
 
-    // Set the HTTP body
+		// Set the HTTP body
 		fmt.Fprintf(w, `
 {
     "network": {
@@ -91,21 +96,21 @@
 			`)
 	})
 
-  // Call our API operation
+	// Call our API operation
 	network, err := Get(fake.ServiceClient(), "d32019d3-bc6e-4319-9c1d-6722fc136a22").Extract()
 
-  // Assert no errors and equality
+	// Assert no errors and equality
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, n.Status, "ACTIVE")
 }
 ```
 
-### Acceptance tests + build tags
+### Acceptance tests
 
 As we've already mentioned, unit tests have a very narrow and confined focus -
 they test small units of behaviour. Acceptance tests on the other hand have a
 far larger scope: they are fully functional tests that test the entire API of a
-service in one fell swoop. They don't care about unit independence or mocking
+service in one fell swoop. They don't care about unit isolation or mocking
 expectations, they instead do a full run-through and consequently test how the
 entire system _integrates_ together. When an API satisfies expectations, it
 proves by default that the requirements for a contract have been met.
@@ -170,24 +175,24 @@
 We have three forms of documentation:
 
 * short README documents that briefly introduce a topic
-* reference documentation on [godoc.org](http://godoc.org) that automatically
-generates from source code comments
+* reference documentation on [godoc.org](http://godoc.org) that is automatically
+generated from source code comments
 * user documentation on our [homepage](http://gophercloud.io) that includes
 getting started guides, installation guides and code samples
 
 If you feel that a certain section could be improved - whether its to clarify
-ambiguity or a fix a grammatical mistake - please feel entitled to do so! We
+ambiguity or fix a grammatical mistake - please feel entitled to do so! We
 welcome doc pull requests with the same childlike enthusiasm as any other
 contribution!
 
 ### 3. Optimizing existing features
 
 If you would like to improve or optimize an existing feature, please be aware
-that we adhere to semantic versioning] - which means that we cannot introduce
-breaking changes to the API without a major version change (v1.x -> v2.x).
-Making that leap is a big step, so we encourage contributors to refactor rather
-than rewrite. Running tests will prevent regression and avoid the possibility
-of breaking somebody's current implementation.
+that we adhere to [semantic versioning](http://semver.org) - which means that
+we cannot introduce breaking changes to the API without a major version change
+(v1.x -> v2.x). Making that leap is a big step, so we encourage contributors to
+refactor rather than rewrite. Running tests will prevent regression and avoid
+the possibility of breaking somebody's current implementation.
 
 ### 4. Working on a new feature
 
@@ -199,4 +204,6 @@
 
 You must ensure that all of your work is well tested - both in terms of unit
 and acceptance tests. Untested code will not be merged because it introduces
-too much of a risk to end-users. Happy hacking!
+too much of a risk to end-users.
+
+Happy hacking!