Tools for parsing command line options etc