Use Material instead of ID in grantable Item.
Cache ItemStack conversions in grantable Item.
Correctly mark private method as private.