Fixed exact text matching by adding trim method.

closes #7

Random white space was ocassionally getting added, and that was
screwing things up.

Added our real invoiceOne to specs view so that we could get a quality
failing, real life test.
Added rough matching. And some refactoring

- Now using a "~" at the beginning of text will do a rough match
- Now using try/catch for all finds, but rethrowing errors if they
aren't stupid syntax errors that really should just return nothing.
- Refactored findByClass and moved text matchign logic to a
findByText function.
Bumped to 2.4.1
Improvements!
- Added better rough matching (not case sensitive anymore).
- Added find all.
- Now throws errors if it finds nothing or multiple items.
- Added tryFind method.

closes #9
closes #10
Aliased tryFind and findAll to the window.

Also super tiny refactors.
Added jshint rc file.
Added bexpect to the window. This just delegates to jasmine's expect.

Don't really think I like this.
Couldn't get delegation to work with the name 'expect'. Was causing
an infinite loop. Couldn't figure out why, so putting off for now.

Anyway... closes #2
removed getAllEls. Won't be needed if finding works and there are
good window aliases
Added a choose function and a click function to help standardize
the stupidness of angular.
removed the it.only
Merge pull request #8 from hinthealth/feature/betterMatching

Feature/better matching and other improvements