Allow partial executions to be specified by the investor.

Use event for failure notification instead of callback.