add unit/integrted tests for dpc

The problem is the test data. v[0] and v[1] stand for the attenuation coefficient of the sample and the captured phase gradient respectively. The values of v[0] and v[1] should be around 1 and 0. (so the starting point are also set as [1, 0])

The following is part of previous verified result:
(attenuation coefficient)
0.8042818143 0.8239483641 0.8351005412 0.8511941930 0.8691124438 0.8863807752 0.9086091913 0.9269252987 0.9619637707 0.9885658387 0.9882867376 0.9919723210 0.9916323006 0.9939268125 0.9928672443 0.9936674461 0.9953489754 0.9948510160 0.9949216481 0.9988837358 0.9982263243 0.9991326160 0.9979824664 0.9973921898 0.9979231500 1.0016331347 1.0008295044 0.9997868667 1.0003822583 0.9993356503 0.9990074198 0.9986419569 0.9958727310 0.9931033695 0.9942277472 0.9938162907 0.9906782945 0.9856229074 0.9849489208 0.9860330311 0.9843985471 0.9830112052 0.9834127569 0.9998558032 
--------------------------------
(phase gradient along x direction)
-0.000195731185871 -0.000248369478246 -0.000400579384795 -0.000203317325088 -0.000591793535513 -0.00110724277623 -0.000505152028976 -0.00102930028991 -0.000769061718947 -0.000760728349502 -0.000983059625827 -0.000548522426511 -0.00042336501661 -0.000242026056282 -8.5490777973e-05 0.00219772489582 -0.00114392743819 0.0017589202298

The objective function (diff = ydata - xdata * v[0] * np.exp(v[1] * beta)) to be minimized was deduced from the real physical process. So when testing, the simulated data should subject to physical constraints (v[0] almost equal to 1 and v[1] almost equal to 0). I made numerous tests today and didn't observe a failing case.