Adding callback handling to ProfileStatus

By exposing a callback, this object is giving other implementors a
chance to tie into the status of the object and its inner components.