Implements #1 - Two-phase access token request
Extends test suite with workflows including error conditions
Fixes to test suite
Enhancements to handle error situations and retries
Implements mocks for two-phase access token request
General code cleanup.
Async module loading not necessary.
Updates module version.
File renaming.
Refactors module structure
Fixes installation script
Updates module name
Better function names
Fixes signature for addToken to local cache
Fixes module require
Fixes module require again
Refactors VoucherService to be passed to each getToken call
Code cleanup
Enhances algorithm in case of failures
Includes back 'updateRefresh' call