Remove unused constants.

Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
Merge BaseFactoryMetaClass into FactoryMetaClass.

Also fix FACTORY_STRATEGY.

Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
Fix exception hierarchy.

Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
Merge Factory into BaseFactory.

Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
Make the Factory class Py3 compatible.

Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
Add full Python 3 compatibility (Closes #10, #20, #49).

Also:
- update travis.yml to build against 2.6-2.7 and 3.2-3.3
- Switch to relative imports

Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>