added Id field to DefaultUserInfo object, switched "userId" terminology to "subject"
updated repository to use proper concrete class