Page not found on new server in Drupal 7 custom module
Turns out the module requires curl which the server didn't have.  The module didn't bring down the whole site but just didn't work itself.  No way anybody could have diagnosed that!