more cli argument parsing, better error reporting, skeleton engine work struct and funcs

Signed-off-by: Leo Bärring <leo.barring@gmail.com>