added a package provide
added more examples
changed source to package require
fixed coroutine binding to not produce an extraneous empty result
added -format option