Converted the wrapper API to cython

The `largest-squareish` C interface now uses a cython wrapper (which should have less overhead). This PR also integrates the changes @dfm contributed.