Buchberger algorithm based on "Ideals, Varieties, and Algorithms" (D. Cox, et. al.). Written in scala.