Updated gen_design to pass objects

Passing objects rather than individual arguments simplifies i/o to this
method, and makes it much easier to modify the input and output
arguments without breaking anything.
PARTIAL changes to improve io

moving towards object passing rather than single-input passing
KNOWN ISSUE with repeater_insertion -- calculation of single wire
capacitance is off because of difference between wla_improved and
wire_layer_assignment_alt (first gives tier capacitance total, second
gives cap/length or something).
fixes to repeater insertion

Appropriately calculate capacitance of wire based on length in RI
routines
Some touchup fixes to i/o in old routines to ensure they work (RI_old)
Merging updates from old IO branch to new IO

Fix in CalcH for out of bounds values
Updates and improvements to wla_improved and its test routines
Updated topdown WLA/RI routine to work with new io
Added repeater area and repeater via area constraints to topdown WLA/RI
routine
Improvements to WLA/RI flow (in advance of adding option for TDWLARI vs sequential WLA + RI)

Prep work to add option for TDWLARI vs sequential WLA + RI as a
simulation flag

gen_design, wla_improved
-Moved capacitance/layer determination into wla_improved
gen_design fully functional with new object io

Updated wla_improved, repeater_insertion, and wla_topdown_with_repeaters
to allow full start to finish runs of gen_design with new IO