Support command line options.

Basic implementation of command line handling. I wasn't sure about adding a new file and namespace which I personally would prefer when there are multiple options and options to share between some application parts (public accessible options).