Added the HelpFormatter.
resolved some bug.
Added test cases