High resolution crystal structure of a Mg2+-dependent porphobilinogen synthase