First pass at client and token persistence