The isomorphism problem for Coxeter groups