Make execute_and_send() a self-contained method

This makes callback_message a bit less of a huge monolithic method and
will also make it easier to write unit tests against execute_and_send in
the future.
Add tests for execute_and_send()
Allow botcmd's to yield values

botcmd's which use yield will have each yielded value be sent to the
person who executed the command. This allows long-running commands to
use yield to keep a user informed of what is going on.
Also test HTML templating when testing execute_and_send()
Merge pull request #150 from zoni/yieldcommands

Allow botcmd's to use yield