make default task fail fast
re-add debugging symbols by default to spec/normal builds
add debug task, remove some clutter
make build script handle multiple tasks in one invocation

Also added a TASKS variable in the script, no use yet, but it may
prove useful in the future.
add doc task to build script
ignore doc/
refactor to build Command object, move into module
implement #run, #has_run on Command.
refactor command, main to use the std::rl readline library