Allow features to be logically grouped

This pull request allows features to be logically grouped into folders.  This helps with keeping a structured test workspace as well as a side benefit of being able to run a subset of features easily.

For example you can now have your features structured like so:

    + features
        - support
        + multiple-features
            - feature-one
            - feature-two
            - feature-three
        - single-feature

NB. I was unsure on the best way to try and determine the base_path. What is there will currently walk up the given feature folder until it finds a "support" folder ... it works however I would love to know if there is an easier way!