#3 - put proper logging in place and add applicable command line options