Support name overlap with classic variants
Fix type annotations in biniou implementation

Support name overlap of classic variants there too
Basic test cases for -allow-name-overlap