[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




I'd rather put the execution in its method. The idea is to have something similar to the `SearchEngine` (should be able to know which command to use depending on the input), or the Symfony2 Console component (pass the command name).

Here's what I imagine how it should be used:

```php
$commandInvoker->addCommand($command);
$commandInvoker->run($command->getName(), $input);
```