fixed a bug in inside out ray casting returning the wrong face

* adds some unit tests for AABox ray intersection
* fixes a bug exposed by unit tests where inside out ray casts were returning incorrect faces