Remove assertions about hidden tasks, because they may or may not be supported by the version of Rake installed.
Also make specs for this less brittle.
A project can have a large Rake task set loaded from numerous .rake files. This can make Capistrano commands sluggish because Cape must query Rake once for each call to a Cape DSL method. Now we are caching the Rake task list such that multiple calls to `mirror_rake_tasks` or `each_rake_task` will not query Rake more than once within a `Cape` block. The cache is expired: * At the end of a `Cape` block * In the event of an error within an `each_rake_task` block * When `local_rake_executable` is changed