Having a circular mask would do nothing at all to help. For reference, circular "masks" are the easiest to program because you can just check the distance to another object, and when the distance is smaller than the radius of your circular collision mask, you have collided (it's a bit more complicated than that but you get the gist).
What I would love to see, @Ashley, is a way to get the normal of a surface, or at least the angle between two points in the mask, so I can make perfect collisions - since this is a bit of an obscure request, perhaps you can point me to the SDK so I can implement this myself? Is this even possible?
Think of a laser beam hitting an irregular (as in, arbitrary shape) mirror - the reflected beam's direction depends on where it hit the mirror. Since the shape is arbitrary and I cannot fetch any data about the collision mask, it cannot be implemented (unless you use weird hacks).