added factory to create users and goals