Added the beginnings of the navigation tests

I still need to refactor the methods but at this point, all tests work
Merge branch 'master' into jonahstanley/add-navigation-tests
Refactored Navigation Methods
Fixed errors in spacing and refactoring out of scenario
Fixed the need of a global variable
Fixed naming issue and hopefully clicking issue
Cherry pick change to url matching regular expression. Fixes LMS-37
Fixed weird issue of needed to sometimes first find then click instead of css_click
Put back in some older code to save source_code property.
Add helper method for typing in CodeMirror, make it robust to Mac and Unix.
Fix for broken forums due to forum entry with no start_date

modification of @jrbl's version to handle a dict with value None
switch to using environment variables to get key for Segment.io
Fix a few remaining tz naive dates

And remove redundant but != date parsing methods. In process make
the general parsing function less lenient (don't default date nor
month)
Updated `diff-cover` to version 0.1.2, which fixes a bug
in which missing lines were over-reported
Fix a few remaining tz naive dates

And remove redundant but != date parsing methods. In process make
the general parsing function less lenient (don't default date nor
month)
Merge branch 'dhm/timeconv/bug0' of github.com:edx/edx-platform into dhm/timeconv/bug0

Conflicts:
	common/lib/xmodule/xmodule/fields.py
	common/lib/xmodule/xmodule/timeinfo.py
Remove waits by adding code in click that will try the operation multiple times (thanks to Jonah).
timezone conversion tests
These CHANGELOGS were never used, and are now obsolete.
Change the wording of problem steps to follow Given, When, Then... convention.