Revamp the testing documentation, move most code out to specs
Move the final snippets out to different specs.
Merge pull request #1615 from wsargent/doc-expand-scalatest

[doc] Fill out Test and Functional Test