Merge Develop

Hi @donbeave 
I've refactored a bit the plugin:
- some cleanup
- extracted functionalities from controller to service
- extracted controller and view from templates to actual plugin artefacts.

I've done some tests and it seems ok, but I'd like to know if you see something I missed or that impact on your app/plugins...

Would you mind a do a little review?
I'm going to merge this PR in the next week if everything is ok for you.

Enrico