SYNR-537 and SYNR-539

More fixes to caching logic.  The client works without these, but some extraneous downloads might happen.
SYNR-541 + unit tests

Fixed up more caching bugs and a minor login issue.
Code review changes:
- Reverted spelling (-ple -> -pal)
- Changed getting submission files to use another variable in the download function
Merge pull request #79 from kaysoky/fileCachingFixesContinued

SYNR-537, SYNR-539, and SYNR-541
Merge pull request #80 from cbare/develop

logout test user and add --teamName command line arg
rolled version number to 0.4.1
Added Synapse-specific exception wrappers.
Changed thrown generic exceptions to the new ones.

Currently fails one test (integration_tests/integration/integration_test.py:test_evaulations) since the new feature has not been pushed to production yet.
Modified the unit/integration tests to use the new exceptions.
Changed description text for param contentSource.
Merge pull request #83 from kkdang/develop

Changed description text for param contentSource.
Merge pull request #75 from kaysoky/exceptionOverhaul

Added Synapse-specific exception wrappers.
Slightly increased unit test coverage via Mocking.
Removed some redundancy in integration_test.py:
- Tests no longer use their own project if possible
- Some tests were combined
- Duplicated tests or tests which were subsets of other tests were removed.

TODO: Update other tests sets similarly.
Since the deprecated methods are now just references to the new methods, many tests from the Entity tests overlap with the tests for deprecated functions.

Tests were cleaned up where possible.
Finished one pass through cleaning up the integration tests.
Added welcome message to Login()
SYNR-545

Added two extra cases to the login method to deal with local caching of the API key.
Fixed up some merging errors.  + alignment with R login message
SYNR-555
Better error messages for authentication via expired session tokens.
Merge pull request #81 from kaysoky/testingOverhaul

Testing cleanup/update