Allow CraftInventory objects to be equal when underlying IInventory is equal.  Adds BUKKIT-4110.

Without this commit, different Inventory objects that represent the same
inventory are not considered equal.  This is noticeable when opening an
inventory for a player using openInventory(Inventory) where upon
comparing the inventory to open with the inventory in the resulting
InventoryView the result of equals(Object) returns false.  With this commit
comparing any Inventory object that represents the same inventory will
result in equals(Object) returning true.