The exact enumeration of self-avoiding walks on a lattice