A Project root can be defined by the presence of a test dir.

This is useful for projects where a Rakefile is not present, as it
provides an alternative means of detecting whether your project root is
actually your project root.
Prevent `default-directory` being set to nil

if the project directory cannot be determined for the current file then
this or condition was falling through and resulting in
`default-directory` being set to nil.

This causes all kinds of unreasonable behaviour (including Emacs
requiring force quit on OSX 10.9 when tested)

To prevent this we will use the existing `default-directory` as the last
test so that it will never be set to nil.

This may still cause obscure test failures as running your tests from an
odd directory may cause ruby to be unable to find required files.

This behaviour is preferable to Emacs requiring a `kill -9` and the new
bahaviour combined with f8379e0 should cause that to not be an issue for
most people.
Merge pull request #18 from eightbitraptor/master

A Project root can be defined by the presence of a test directory