yeah a lot of things
yeah move some methods for functionals