Small optimization

Better sorting reduces the number of shortest paths calculations needed
However, successive shortest path min-cost-flow seems awful beyond 16
regions (~20 iterations/element)
Added a naive orientation optimization step

Single-pass orientation optimization
Rather slow, but is efficient enough to be called occasionally
Rounding pass for linear relaxation optimization, once implemented
Forgotten a small optimization
Critical bug corrected

A critical bug existed in the HPWLF model, which was clearly not correct
Implemented a new basic star model (terribly bad at optimization)