Added the "pure" backend

and found a couple bugs !