clean: The command directory.

Move all strategy into src/dctc/java/com/dataiku/dctc/command/grep.
cat: Start to refactore the algorithm with a strategy design pattern.

* src/dctc/java/com/dataiku/dctc/command/cat/CatAlgorithm.java: The
  interface of the algorithm.
grep: Make the interface public.

* src/dctc/java/com/dataiku/dctc/command/grep/GrepHeaderPrinter.java,
  src/dctc/java/com/dataiku/dctc/command/grep/GrepLinePrinter.java,
  src/dctc/java/com/dataiku/dctc/command/grep/GrepMatcher.java,
  src/dctc/java/com/dataiku/dctc/command/grep/GrepPrinter.java: Need
  to be visible for the grep algorithm.
grep: Grep a factory for the strategy design pattern.

* src/dctc/java/com/dataiku/dctc/command/grep/GrepStrategyFactory.java:
  Here.
grep: Use the factory instead of building himself the object.

Also, Back to a stable repository.

* src/dctc/java/com/dataiku/dctc/command/Grep.java: Here.
style: Update.

* src/dctc/java/com/dataiku/dctc/command/Cat.java,
  src/dctc/java/com/dataiku/dctc/command/Cmp.java: Update the style.
* src/core/java/com/dataiku/dip/partitioning/DimensionValue.java:
  Spacs, no new line at the end of the file.
fixup! cat: Start to refactore the algorithm with a strategy design pattern.
cat: Extend the interface with error management.

* src/dctc/java/com/dataiku/dctc/command/cat/AbstractCatAlgorithm.java:
  Put a fixme for the yell management.
cat: Interface for line printing.

* src/dctc/java/com/dataiku/dctc/command/cat/CatHeader.java: Print the
  meta before the line.
* src/dctc/java/com/dataiku/dctc/command/cat/CatLineSelector.java:
  Select if a line needs to be printed.
* src/dctc/java/com/dataiku/dctc/command/cat/CatPrinter.java: Print
  the selected line without the end of line character.
* src/dctc/java/com/dataiku/dctc/command/cat/EOLCatPrinter.java: Print
  the end of line character and meta information if needed.
cat: end of line printer implementations.

* src/dctc/java/com/dataiku/dctc/command/cat/DollarEOLCatPrinter.java:
  Print a dollar and an end of line.
* src/dctc/java/com/dataiku/dctc/command/cat/NewLineEOLCatPrinter.java:
  Just print an end of line.
cat: Header printer.

* src/dctc/java/com/dataiku/dctc/command/cat/EmpytCatHeader.java:
  Don't any header.
* src/dctc/java/com/dataiku/dctc/command/cat/LinumCatHeader.java:
  Print the number of the line.
cat: Line selector implementations.

* src/dctc/java/com/dataiku/dctc/command/cat/FullCatLineSelector.java:
  Select all line.
* src/dctc/java/com/dataiku/dctc/command/cat/SqueezeEmptyCatLineSelector.java:
  Select all, but repeated empty line.
cat: Implementation of the line printer.

* src/dctc/java/com/dataiku/dctc/command/cat/SimpleCatPrinter.java:
  Just print the line.
cat: Cat algorithms.

* src/dctc/java/com/dataiku/dctc/command/cat/LinumCatAlgorithm.java:
  Use CatHeader, CatLineSelector, CatPrinter, and EOLCatPrinter for
  concatenate the files.
* src/dctc/java/com/dataiku/dctc/command/cat/SimpleCatAlgorithm.java:
  Dump of file
cat: Cat factory.

* src/dctc/java/com/dataiku/dctc/command/cat/CatAlgorithmFactory.java:
  And base for tail and head.
cat: Use the new implementation.

* src/dctc/java/com/dataiku/dctc/command/Cat.java: Use strategy design
  pattern.