Move everything into a client class and use device token auth