Fixes issue #998.

Fixes multiple issues with the way PR #997 was implemented. 
@TShapinsky the code below listens for changes to the period preference, and uses a `LocalBroadcastManager` to broadcast the change to interested parties within the app.
It then proceeds to update the periodic controls to reflect the changes.