Budget support

Adds exponential decay of the parts' value (fixes #19) and corrects the
negative costs issue (fixes #30)