opaque AA Range interface

depends on #510