Minor renaming and tweaks - experimenting with callback with/without return values
Introduced FindAllMovies use-case object and implemented via callbacks.
Introduced AddNewMovie use-case object and implemented via callback, thus removing MovieRepository from MovieController.
Possibly gone off the dynamic/callback deep-end here - refactored use-case classes to implement generic Command pattern, then invoke commands passing dynamic "params" object that can contain arguments and callbacks.

Seems OK, but too much emphasis on callbacks?