added some extra tests and renamed packages to be more generic.