Task Allocation in Mobile Robot Fleets: A review