added UserIdentity class and some packege structure