Initial Commit
Working Code. Is necessary to complete the unit tests