reload-code: have it not error when source_file is nil
show-source: support create_command based commands
re-add reload-method as an alias for reload-code

Turns out some people actually used reload-method, so we re-add it to avoid them getting angry
Pry::WrappedModule: add candidates Enumerator

This enables things like this: Pry::WrappedModule(mod).candidates.find(&:source)
returns the first candidate (monkeypatch) with accessible source code.
Pry::WrappedModule#source no longer raises if it can't find source.

This is not an exceptional situation so an exception should not be used. nil is now returned instead.
show-source/show-doc: Show the first module candidate with source/docs

Prior to this change `show-source ActiveRecord::Base` would fail, as the highest ranked
candidate couldn't be discovered.