Added:
   - new class AMAppArgumentParser added to parse the program arguments
Altered:
  - make magic string static constant
alterred:
 - minor changes to make codes better
Altered:
  fix the wrong usage of a variable
Altered:
   - fix broken build
Merge branch 'master' into Issue771
altered:
 - programArgument can have value as well
Altered:
  - remove the support of parsing argv[] since it contains too many
environment arguments
  - QApplication::instance()->arguments() will provide a qt filtered
argument list.
Altered:
  - add the AMAppArgumentParser.h/cpp to the project file
altered:
 - get function name
 - the defintion format for enum type
 - the usage of constant strings
Merge pull request #783 from acquaman/Issue771

Pull Request for Issue771: add application argument parser

Great @XuetaoLiu-CLS thanks for your work on this topic. Everything built on my end and seems to be good to go.