Added method to MerchantRecipe to return maxUses

Changed InventoryMerchant to support new maxUses field and new
constructors

Added implementation to CraftInventoryMerchant for retrieving matching
offers.