I wrote a brief article which should help:http://www.digitalmars.com/d/2.0/migrate-to-shared.html
Regarding making globals immutable, one other option that was not identified was making it an enum.
Most of the time, I would think you'd want manifest constants versus immutable globals, as they take up no static space.
(not any more comments yet, still reading...) -Steve