extended test coverage for the freeze package, thereby fixing some bugs.

Test coverage for the ``freeze`` package is now at almost 100%:

```
Name                            Stmts   Miss  Cover   Missing
-------------------------------------------------------------
dataset                            14      1    93%   31
dataset.freeze                      0      0   100%   
dataset.freeze.app                 38      0   100%   
dataset.freeze.config              59      0   100%   
dataset.freeze.format               7      0   100%   
dataset.freeze.format.common       67      2    97%   65, 68
dataset.freeze.format.fcsv         32      0   100%   
dataset.freeze.format.fjson        34      2    94%   13-14
dataset.freeze.format.ftabson      16      0   100%   
```

To achieve this, I refactored ``dataset.freeze.app`` a bit to allow for easier testing. While adding tests, I also discovered and fixed 2 bugs: One in https://github.com/xrotwang/dataset/compare/pudo:master...master#diff-25291c729a57feadd7aef29fadad4409R31
and another one in https://github.com/xrotwang/dataset/compare/pudo:master...master#diff-cadd8af6b58b3ac0494858d0ffa0220aL105

The changes outside the ``freeze`` package and tests are restricted to adding ``pragma: no cover`` comments to tune coverage reports and taking advantage of the ``six`` package to make portability across python 2+3 easier.