sysinfo: correct swap 'cached' field
gitignore
utils: move parse_interval() to utils.h

A header a for a single function is daft.
utils: move uptime_... functions to utils.h
admin: doxygen
test: t-error no longer forks

Plays better with coverage testing.
doc: some (very basic) architectural documentation
doc: more detail internal docs
doc: tidy up arch diagram
doc: more consistent naming
tasks: consistently refer to processes+threads as tasks

No semantic change, just a lot of renaming.
tasks: more consistent handling of vanishing tasks

Also add some details about this to the design document.
admin: README -> README.md

Link to github for bug reporting.