Updates to authentication to handle configuration files

- Adds support for login using .synapseConfig file in home directory.
- Fixes circular import in version_check.
- Removes login function from commandline to have unified interface.
- Expands on README to explain authentication

### Note

for unittests to pass the configuration file needs to be in the home directory under .synapseConfig instead of the local directory.  This is so that authentication can be unified for unittests and regular use.