refactored depricated method
factories refactored
removed unused file
added notice partails
refactored use of factory
more premission