Replace the StockResolver with AvailabilityChecker, introduce specs