Use new php sim instead of php-cpd

For more information have a look at https://scrutinizer-ci.com/blog/introducing-new-duplicated-code-detection-for-php
Refactor factories
Replace tabs with 4 spaces
Refactor DRY in BlogController
Do not state the interface in derived concrete classes. Make the parent abstract.
Merge pull request #1 from jk/feature/use-new-php-sim

Use new php sim instead of php-cpd
raising external code coverage timeout
Fix classname generation in BaseFactory class
extending tests
Merge branch 'feature/reduce-dry' of https://github.com/jk/MaglBlog into jk-feature/reduce-dry

Merge pull request #2 from jk/feature/reduce-dry
fixes loading of repository classes
cleaning unused code from blog controller
Merge commit '9cdfc7e1980c306e88b0f9397056721b34ed7394' into service-tests
adding tests for services
removing controller and repository tests for merge