[WIP] Refactored ReplaceStrategies into Commands

Fixes #19, almost completed

Tests are currently failing because I didn't yet updated the 4 `EditorSpec` manipulation methods. I'm not sure how to properly write test with phpspec about correct command being created inside the related Editor's method. Waiting for some feedback on this point :wink: 

Moreover, I'm not really satisfied with the current solution because a `LineContentConverter` is instantiated each time a Command is created.

I hope the current architecture isn't too awful and is now opened for some review :smile: 

- [X] Create commands
- [ ] Fix tests
- [ ] Remove replace engine and strategies




From what I saw, phpspec gives you the same object between `let` arguments and test methods ones.
Which means you can pass `File $file` here, and when you decalre a test method with `File $file` as argument you should get the same object.

So there's no need to create a `$file` attribute.