Added benchmark class, holds both upper and lower benchmark and
	the set data of each region

	Got the generalized case working
	Now handles arribratry amounts of regions with both upper and
	lower constraints