[hacc] Add haccability for std::tuples.

It involved a lot of really ugly templates.
[core] Make new command system compile
[core] Make a command compile.
[core] Make new commands creatable
[core] New command system seems more or less complete.
[hacc] Make tuple elems optional
[core] Move help to new command system.
[core] Enforce minimum argument requirement.
[core] Delay command description building.
[core] Move all commands in core to new command system.
[core shell] Delete old commands system
[core] reload's argument is optional.