Improve error reports and allow usage() from fatal

Signed-off-by: David Greaves <david.greaves@jollamobile.com>
Usage layout

Signed-off-by: David Greaves <david.greaves@jollamobile.com>