i'm pretty sure translate_address() works now.

We need exception handling and proper two's complement overflow checking.