Adds a call to willMoveToParentViewController

A call to willMoveToParentViewController was missed when the
collection view controller was added as a child view controller
in the main view controller.
Still fixing issue #4
Removes unnecesary call to MAIN_THREAD.

The call to MAIN_THREAD is not needed because the operation
queue passed when registering the handler to the notification center
is the main queue. That means that the selector will be invoked
in the main thread.
Handler registration moved to viewDidLoad or init.

Notification handlers are no longer removed when the
controller's view is not visible. This assures that
modification to the view model are still made.