Implemented Kernel Post-boot testing.

1. Added generic C unit testing macros in kern/include/test_infra..
2. Moved current Postboot tests from kern/src/testing.c to
   kern/src/tests_pb_kernel.c and modified many to use the new unit
   testing standard.
3. Added kern/src/tests.c as a file in which to register all kernel
   testing functions (can be extended in the future with new tests)
4. Modified kern/src/manager.c to run kernel postboot tests if they
   are set up.
5. Modified KConfig to add a config variable for configuring
   whether to run these tests post boot or not.
6. Added Documentation/testing.txt (W.I.P.).
7. Modified necessary headers and KBuild files.
Fix kbuild make detecting change in file

Unfortunately, Kconfig doesn't seem to recognize that the tests.c file
needs to be rebuilt unless we explicitly use our CONFIG_TEST_* variables
in the c file instead of generated by the underlying macro. Boo.
Added automatic userspace test launching capability to AKAROS.

* Created a new config variable (USERSPACE_TESTING) in Kconfig.Testing
  in which to specify a path to a script that should run userspace
  tests.
* Modified manager.c to support this.
Separated user-space config variable into two.

CONFIG_USERSPACE_TESTING: whether tests are activated or not.
CONFIG_USERSPACE_TESTING_SCRIPT: path to test launcher.
Make infrastructure for better organized user testing
Install user tests in a subdir of /bin
Finished infrastructure that runs all userspace tests.
Added jenkins testing infrastructure.

Contains:
1. launcher.sh: Bash script in charge of compilation and running
   all the testing components.
2. changes.py and compilation_components.json: Script that checks
   for changes (via a git diff) since last commit and decides
   which components of akaros to compile.
3. qemu_launcher.c and Makelocal_qemu: Wrapper for launching qemu
   for akaros in a way that is killable from jenkins without being
   root.
4. wait_until.py: Script that checks for a given line in akaros
   output in order to know once it finished testing and stuff so
   we can kill it.
5. test_reporter.py and markup.py: Scripts for parsing akaros
   output for test output and then reporting it in XUnit XML
   format.
Turn on userspace tests and set defaults properly

We need a make olddefconfig after manually turning on the tests,
otherwise we get prompted to answer some qestions, that we don't want to
answer.  We just want to use the defaults.
Get diff from last stable build, not just previous build

Also there is no longer a 'make testsclean' target.
Major overhaul to testing infrastructure
Clean the output log to remove ^M characters
Add Extra prints surrounding KERNEL TESTS