Tests to check config file parsing validation

- Modified `experiments.py` to make sure that we reject parsing config files with no `task` and `experiment_name`
- Added 3 tests to test config file parsing, to start with
- Added config file template for these tests
Adding warnings to experiments.py

- Added warnings if `hasher_features` is set but `feature_hasher` is either missing or set to False.
Modified experiments.py

- Added specific check for an empty featureset list
- Tweaked ValueError strings
-
Added more config parsing tests

- Added tests to check errors for parsing sampler, feature hashing, featuresets and featureset names.
Modified empty featureset check

- Turns out that the featureset list can be empty if `train_file` and `test_file` are specified. Updated accordingly.
Move `feature_scaling` from Input to Tuning
Added more config parsing tests

- Tests for feature scaling, training file/paths and test file/paths.
Add mock requirement to README

Also switch to using warehouse.python.org PyPI URLs, since it's much prettier.
Separate error for an empty learner list.
Added more config parsing tests

- Tests for grid objective and various task-based path settings.
Merge branch 'master' into feature/even_more_tests
Remove errant statement and uncomment real one
Simplified docstrings
Added tests for `load_cv_folds`
Fixed major bug in `safe_float`

- `safe_float()` needs a string input to work correctly and it was being passed a float in some cases.
Use `text_type` instead of `str` in safe_float

- to deal with python 2 conversion issues.
Added template file for fancy output test
Added/Updated `tearDown()` methods
Added tests for `safe_float` number conversion
Updated test_regression.py

- Added new test for the regression fancy output descriptive statistics.
- Added `setup()` and `tearDown()`.