Patch with a few more behind-the-scenes changes to unit tests. Instructions are now included in the documentation for running them individually or with higher verbosity, and a few tests were added for classes under the logic submodule.
Code
----
* New `rfgb.rdn` package, methods for performing learning and inference are included. The api is not finalized so this package is not imported by default, nor has `__main__.py` been set to use these definitions.
* Refactored `rfgb.logic` and `rfgb.tree` to bring them into accordance with pep8 standards.
Tests
-----
* Imports in unit tests were changed to be relative to their placement, rather than being explicitly set with `sys.path`.
* Unit tests were adjusted so that they should be ran with the `unittest` command-line module.
* Verbosity in `rfgb/tests/tests.py` may be passed as a parameter.
* `rfgb/tests/tests.py` explicitly raises an exception when failures are detected (this fixes what may be a bug with `unittest.TextTestRunner` or with the CI services presently employed; previously if failures occurred there was no outside indication that an exception occurred).
Docs
----
* `docs/source/conf.py` now includes the `sphinx.ext.viewcode` extension for viewing code in-line with documentation.
* New "Development" directory and unittest page for outlining how tests may be ran.
* Adjusted titles in the "Getting Started" section.
* Added community guidelines as `CODE_OF_CONDUCT.md` and `CONTRIBUTING.md`.