Testing: add framework for the kernel unit tests.
This changes intends to reduce the bar to the kernel unit-testing by
introducing a new kernel-testing framework ("ktest") based on Netlink,
loadable test modules and python test suite integration.
This framework provides the following features:
- Integration to the FreeBSD test suite
- Automatic test discovery
- Automatic test module loading
- Minimal boiler-plate code in both kernel and userland
- Passing any metadata to the test
- Convenient environment pre-setup using python testing framework
- Streaming messages from the kernel to the userland
- Running tests in the dedicated taskqueues
- Skipping or parametrizing tests
Differential Revision: https://reviews.freebsd.org/D39385
MFC after: 2 weeks