set new version string in setup.py
rewrite combinator to use one class
use needs as decorators