Initial Commit
Don't have empty offsetter blocks `[]`
basic test stubbing
Test injectibility of data source
Implement passing test test_alternate_definition_file_can_be_injected
Refactor: Extract configuration loading

Introduce a `default_file_loader` which is
responsible for loading either:

* a passed-in config file
* the ~/.rotas.yml unless prohibited by an option
* the "factory" `rotas.yml` file
Add tests for lookup table; placeholder for translator
add translator
add stubbed class files
Extract Class:  DefaultOffsetStrategy, DefaultTranslator
Factor out offsetter and translator from RotasApp
Test for DefaultTranslator
Use subdirs to organize files
Extract CelDivider class

Isolate the logic about division of characters.
This class can take on the burden of figuring out
which letter tokens should be tossed out.
Change Cel Divider Algorithm

We don't want straight letter count divisions.  We
want / and !, etc. to be preserved to be ignored.

WHY
===

Consider `rotas "foot / bart"`.  I
want the output to be

    f-representation
    o-representation
    o-representation
    t-representation
    <space>
    /
    <space>
    b-representation
    a-representation
    r-representation
    t-representation

not

    f-representation
    o-representation
    o-representation
    t-representation

    <space>
    /
    <space>
    b-representation

    a-representation
    r-representation
    t-representation
rotas: add puts so that our output gets printed ;)
basic_test -> rotas_app_test
Preserve non-translated characters
Light cleanup in default offset strategy
Lookup table -> source file binding was confusing

Sometimes it's better not to inject the whole
thing when inverting dependencies