add backlog of feature tests and refactor existing tests 

NOTES:

this commit includes tests for the features implemented on other branches
    they are not marked as 'pending' and will be failing before those
    feature branches are merged - so it may be best to hold back this PR
    unitl all of these are merged
PR #131 - fix inconsistent capitalization of signup/sign-in links
PR #140 - add project avatar image to Project index and show pages
PR #141 - add "sync pending" notice and more pretty urls

the only functional change in this PR is the extension of the pretty project url sceme to the edit, decide_tip_amounts, tips, and deposits routes

many tests were refactored to use the uniform url scheme and to accomodate more test project instances and providers other than github


CHANGES:

* added cucumber test for project management ability of collaborators/non-collaborators
* added cucumber tests for searching and adding projects (PR #140)
  * add test for and searching/adding valid and invalid repos
  * test also for organization avatar image
  * added features/find_or_create_project.feature
  * added features/project_steps.rb
* added cucumber tests for signup and sign-in links (PR #131)
  * added features/signup_signin.feature
  * added features/step_definitions/home_steps.rb
* added cucumber tests for "initial sync pending" notice (PR #141)
  * added features/manage_project.feature
* added rspec controller and routing tests for most actions of all controllers
  * added spec/controllers/tips_controller_spec.rb
  * added spec/controllers/withdrawals_controller_spec.rb
* factored out commonality from some existing steps (ie. "When I visit ...")
* deferred loading of collaborators and commits until project actually "syncs"
* handles up to three test @project instances


FAILING TESTS:

the steps in features/step_definitions/home_steps.rb
    "I should see "Sign up" in the header" and
    "I should see "Sign out" in the header"
  and the steps in features/step_definitions/web.rb
    "I'm not logged in"/"I log out"
  are failing in this commit because they depend on the feature implemented in PR #131

the step in features/find_or_create_project.feature
    "there should be a project avatar image"
  is failing in this commit because it depends on the feature implemented in PR #140

the uniform pretty urls feature of project-management branch (PR #141)
    is so intrinsic to the generalized "I visit ..." testing paths in this commit
    that this branch incorperates it - as most existing tests would fail
    without the uniform pretty url routing scheme - the project-management branch and
    may even merge until all of the PR mentioned here are up to date -
    in any case to minimize merge conflicts it probably best to merge this one last