some improvement at getopt

* correct segfault at unrecognized option
* improve usage()