Fix use of limit

Define limit as None in the init
Fix misnamed variables
Don't break if it cant fit

Now it uses the 'approximate' value for the MPV if the fit fails.