added tokenUpdateListener, save and read token from preferences. still working on some issue with UI invocation when saved token is used