allow variant inheritance

Allow variant inheritance as described in #64