clarifies sessions -c command

#4063 has landed, so this is ready.  It's been rebased to eliminate merge conflicts

This PR clarifies the sessions -c usage info and changes the session execute RequestError rescue to be more specific and informative

## Verification

- [ ] Get some sessions, preferably a shell and any native win meterpreter
- [ ] sessions -i ID -c calc.exe
- [ ] success on both sessions
- [ ] sessions -i ID -c pwd
- [ ] get: pwd is not a valid shell command or binary path

how the heck did that make it out… I must have done that during the merge conflict resolution
Fiixing missing

```Ruby
when ‘cmd’
```
now

On Nov 11, 2014, at 1:49 PM, sinn3r <notifications@github.com> wrote:

> In lib/msf/ui/console/command_dispatcher/core.rb:
> 
> > @@ -1655,11 +1655,6 @@ def cmd_sessions(*args)
> >  
> >      # Now, perform the actual method
> >      case method
> > -    when 'cmd'
> > -      if cmds.length < 1
> > -        print_error("No command specified!")
> > -        return false
> > -      end
> >        cmds.each do |cmd|
> Travis is complaining about this syntax error. You're using a case, but there is no when, instead you're doing cmd.each do |cmd|
> 
> —
> Reply to this email directly or view it on GitHub.
>