DRY up the cucumber step definitions

A lot of these were almost 100% cut and pasted between iOS and
OS X. Once we had that wrapped up, it was pretty clear that the
spec suite and spec bundle steps were also very similar.

Apparently there isn't a lot of good information available on how to
write step definitions that you can use in different .feature tests.
We've guarded against defining these rules twice in
common_templates_steps.rb, but there might be a simpler solution (we
tried for a while but were unable to find one).