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
Added info to changelog for recent pull requests.
Added comment regarding the fact that the temporary bug fix should be eventually removed.
fixing segment io settings bug

* Moving to the auth tokens section
* Removing the feature flag logic since all features are loaded earlier
```
    for feature, value in ENV_TOKENS.get('MITX_FEATURES', {}).items():
        MITX_FEATURES[feature] = value
```
moving settings into the auth tokens section
Merge pull request #180 from edx/jarv/fix-segment-io

fixing segment io settings bug
Merge pull request #179 from edx/valera/additional_comments_on_youtube_api_bug

Addtional comments for YouTube API bug.
Merge pull request #178 from edx/valera/adding_changeleog_info

Added info to changelog for recent pull requests.
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)