Merge branch 'master' into dev

* master:
  Commands with only options are now correctly parsed.
Merge branch 'master' into dev

* master:
  Fixed a wrong recursive call.
  Fixed a typo on usage message.
  Allowed to set the executable name.
  Argument may stop the parsing.
  Simplified the interface.
  Re-fixed a bug preventing option analysis when no argument is awaited.
  Give the library a more user-friendly interface.
  Avoid error when there is unknown argument left.
  Added an error message for bad range errors.
Fixed a missing call to command's action.