catches timeout
Adds args parse, beefs up logging