Overhaul do_help function

- Split do_help to make get_help recursive function
- Tidy up the recursion and make it more efficient
- Handle arguments for help_ functions
- No need for try/except reading __doc__
- shellac-example help_ methods take args, offers all paths through recursion