#119: fix intercycle and purge

This addresses the two remaining test failures:
```
tests/intercycle/01-future.t
tests/purge/00-purge.t
```

The intercycle test was broken because of the removal of implicit
cycling in earlier #119 work. I've added replacement functionality
that should provide backwards compatibility in most cases.
There is a new intercycle test to test the most complicated example
of this in the user guide.

I've added some checking to make sure that implicit cycling (to an
extent) is not available under new style cycling, as well as checking
for a few other deprecated things like the usage of start-up tasks.

Purge was broken because a few of the tasks that it dynamically
spawned became stuck in the new task pool's runahead pool.
They now have a release check during the purge. The
`set_runahead` functionality is also fixed.

@matthewrmshin, please review.