add intrusive list implementation and modifications to flp2 and gcd