Modified constructor per Russ' comments. Cost and constraints are now added after construction.