remove lmfit dependency

use eigen for non-linear optimization