implementation of SVDFeature (#436)
 - fix the bugs in optimization methods and objective functions
 - add a simple test case