#5 Use root scope instead of collection of scopes. Remove final modifier.
#5 #6 #7 Added comments and test for Configuration