Add NULL check for malloc
Use strtou() to parse to unsigned
Revisit output levels
Add 'make dist' target