Cleanup invalidation annotation

To prepare for #117 i wrote some more functional tests. One big wtf though.