public CarPark(int maxCarSpaces, int maxSmallCarSpaces,
			int maxMotorCycleSpaces, int maxQueueSize) {

		this.maxCarSpaces = maxCarSpaces;
		this.maxSmallCarSpaces = maxSmallCarSpaces;
		this.maxMotorCycleSpaces = maxMotorCycleSpaces;
		this.maxQueueSize = maxQueueSize;
		totalSpaces = maxCarSpaces + maxSmallCarSpaces + maxMotorCycleSpaces;

		// Arrays to hold vehicles past/present.
		vehiclesInQueue = new ArrayList<Vehicle>(maxQueueSize);
		satisfiedVehicles = new ArrayList<Vehicle>();
		dissatifiedVehicles = new ArrayList<Vehicle>();

		// Arrays to hold numbers of each type of vehicle + a list to hold the
		// lists.
		motorCyclesParked = new ArrayList<Vehicle>();
		carsParked = new ArrayList<Vehicle>();
		smallCarsParked = new ArrayList<Vehicle>();
		allVehiclesParked = new ArrayList<ArrayList<Vehicle>>();

		allVehiclesParked.add(carsParked);
		allVehiclesParked.add(smallCarsParked);
		allVehiclesParked.add(motorCyclesParked);
	}