added validation checking to updateName() to make sure the name is different and that another item does not already use the new name (all item names should be unique) - #11
added javadoc for open() function