Fix stacking for items after setting empty meta. Fixes BUKKIT-5331

ItemStacks do not stack if one has null for a tag, while the other has an
empty tag. In CraftItemStack, if you set an item to an empty ItemMeta, it
will create an empty tag for the internal ItemStack.

This changes the setItemMeta function to check for empty meta, and then
use null for the tag instead of an empty NBTTagCompound.
Allow inventory creation by InventoryType and title. Fixes BUKKIT-4045

Previous to this change, it was not possible to create an inventory
with both a specified type and title.