adding sorcery gem and basic user functions