Updated Registry, RegsitryImpl and RegistryImplTest

Registry and RegistryImpl have been refactored and RegistryImplTest has
updated tests.
Merge branch 'master' of https://github.com/jdawes/seng426project