Add a "Dry Run" feature to the Agent form.

User can test if an agent being saved will work as expected simply by clicking the "Dry Run" button, which opens up a modal window that shows dry-run results including log, events and memory.  Resolves #593.

The current implementation only allows dry-run of Agents that do not require an incoming event to be run.

Also, each Agent class must opt in for this feature by declaring themselves as `can_dry_run!`.  To begin with, only WebsiteAgent is marked as dry-runnable for now.
It prepends Sandbox on an instance (receiver), not on a class.  As indicated by the bang suffix, the instance is sandboxed permanently and can never perform wet-run (sp?) again, but it does not affect the originating class.