Correct _parse_yaml_config's handling of empty string

Correct _parse_yaml_config's handling of empty string to treat empty string
as an empty config object.  This will result in the default config being
returned if the empty string is passed in.  None will result in the
loading of the default config yaml.
Add a simple example of using Context callbacks
Update Async to support specifying a context checker

Add an internal '_context_checker' option to Async to facilitate Context
completion checking.  This is meant as an internal parameter only for
internal use.