Contains implementations of various algorithms