Only fetch an online UUID in online mode

The previous code would get an online UUID even in offline mode what
breaks plugins if the player joins after that.

Example:
You want to store data for player "Test"  who never joined. An online UUID is created and you save it using that UUID.

The player Test joins with an offline UUID but that will not match the online UUID of the saved data.


In UserCache the request to the mojang API is made before the actual offline mode test

JIRA: https://bukkit.atlassian.net/browse/BUKKIT-5726