library now just header only (templated)
cleaning everything