Until non-empty lists are included in the standard library, this rather naive implementation should do the trick. Currently the goal of the API is not to be complete but to follow our current usages.
Why not using ocaml-non-empty-list? Although the implementation is more than reasonable, it relies on Base, which we feel is too much to expect for small projects.