Bug fixes for Issue #7 and #8 plus fix for incorrect caching of refresh tokens.

Fix issue with refreshed cache entries not having userId info. The server does not send back an id_token on token refresh requests, so the cache code needs to fill in the new entry with the originating entries userId information.

Return a reasonable error message when an entry cannot be found in the cache during the basic acquireContext flow.

Add some slop, 5 mins, to token expiry calculation to account for clock skew and network latency.
Essentially.  This is not a public API, but it does get called by the AuthorityContext.acquireToken function.  Given that there is no interactive auth in the node lib this is what was suggested.  That was before acquireTokenSilent was invented.