Reorganize tests into unit and functional tests

This commit breaks up the tests into 2 subdirectories, unit and functional.
Functional tests use the network in some way and may require either a
queries file or a functional config. Unit tests do not have these
requirements. In addition the default tox job is changed to only run the
unit tests. The functional tests are give a separate tox job.

Change-Id: I4bdc7f1098bfb7fa16dd869b2e54b3154848c3e1