Developing Identity framework
Refactored