Add Interface
Update composer.json
Remove Controller dependency
docblock
Remove unused code and cleanup for following conventions