Introduce a data dao

This will make it easier to cache specific data in memory later, if
needed.
Import old data in a background task

This ensures that we have ~10 min to process and do the import, versus
~60 sec before
WIP: Add a PlayerService on the client

This is to provide a layer between for getting the player data. This
will make it more efficient to get data, where we can get a list of
players, and then cache that on the client, to make it more efficient
to get individual player objects.