added localstorage, plus some UI