C++ Second Update

Minimal layout in place, it is going to be much easier to implement this
way, it is also multithread safe(r) this way and each program can have
many instances running.
Documentation Cleanup

Finished for the day, documentation in order, already looks much cleaner
than the plain C version.