Version 2: New better version which includes parsers for command line.