Merge 2.0 branch to master

As discussed in #8, this branch contains all changes from branch 2.0 rebased onto master.