New legalizer

* Row-moving legalizer
    * Based on a single row problem
    * Optimizes standard cell placement
    * Doesn't handle variable cell height yet
Outsourced the single row problem

In order to use it for export in the rough_legalizer
Legalization using linear rather than quadratic cost

The export of the rough_legalizer now uses a slightly better cost
function