added storytoken model, cleaned up api