Modularize the build. 1. Add -DLINE_SEARCH_MINIMIZER to CMake to make the line search minimizer optional. 2. Better handling of -DSUITESPARSE/-DCXSPARSE in top level cmake file. 3. Disable code which will never be used if SuiteSparse and/or CXSparse is not available. 4. Update build docs. 5. Update jni/Android.mk 6. Minor lint cleanup from William Rucklidge. Change-Id: If60460a858000df82faed7a6bb056dd2bfdde562