bsp_invert()

This is work to implement `bsp_invert()` in preparation, and based on the foundation of `poly_invert()` from #9 

### A play in several acts

 * [x] Poly invert #9 
 * [x] Test for bsp_invert()
 * [x] Invert current node
 * [x] Invert front/back trees
 * [x] Flip `node.front` <=> `node.back`