Add support for hidden steps

This will finish off [TRAC-2818](http://trac.buildbot.net/ticket/2818).

Note that this conflicts with #1408.  I'll rebase, depending on which lands first.