Instead of doing this completely independent for D6, would it make more sense to integrate with the Location module? That gives the user a firm way of entering data that can then be formatted to show as a block? I'm doing this through the use of Contemplate and Location module right now because I got tired of all the Gmap integration issues, and thought it might be a good direction for this module.