Add options description to usage output
Release lock before calling callback function
Reorder functions and remove fast-forward declarations