A better organization to read options

* When the first argument is a file, other options were not taken into account. Bug fixed
* Improving cli classes