Fixed bug in setItemClass, added additional tests

This function allows Items to be created by the Pool class using different, developer defined classes.