SunRPC lib and module cleanup

In #3767, I made some changes to the XDR code to address some defects, but in doing that I had to test the modules that use this code.  Unfortunately, many of them are painful to use in various ways:

* Inconsistent ```*print_*``` usage, leading to bad and inconsistent experiences when running
* There was a timeout, but it was buried, therefore many of these modules would wait for 20s on a host that didn't even offer RPC services, making scanning larger ```RHOSTS``` really painful.  I exposed this as an option and set it to something more sane, 5s.

Functionality wise, at least with respect to how each host is handled, should be unchanged.

## Validation
 - [ ] Locate some hosts exposing RPC services of some sort
 - [ ] Run the affected modules against all of them, confirming that the end result has improved:
  - [ ] exploits/solaris/sunrpc/sadmind_exec
  - [ ] exploits/solaris/sunrpc/sadmind_adm_build_path
  - [ ] exploits/solaris/sunrpc/ypupdated_exec
  - [ ] exploits/windows/emc/networker_format_string
  - [ ] exploits/windows/brightstor/mediasrv_sunrpc
  - [ ] exploits/aix/rpc_cmsd_opcode21
  - [ ] exploits/aix/rpc_ttdbserverd_realpath
  - [ ] auxiliary/scanner/nfs/nfsmount
  - [ ] auxiliary/scanner/misc/sunrpc_portmapper
  - [ ] auxiliary/admin/sunrpc/solaris_kcms_readfile



Has check sense now? As far as I understand ```sunrpc_create``` doesn't return nil now, but raises ```::Rex::Proto::SunRPC::RPCError``` which is already handled. Maybe I'm not understanding okey. Mixin methods documentation would be helpful to understand what to expect from ```sunrpc_create```. But I understand it wasn't documented before. So I won't hold up it. Just asking for clarification about my doubts before landing! thanks!