update CeleryRouter to pass message variables (not object) to task; fix tests
simplify external_id test for DatabaseRouter