Eliu gh 186 189 345 cleanup and make optimizer arguments consistent fix 0 multistarts bug

********* PEOPLE *************
Primary reviewer: @sc932 

Reviewers: @ypwais

********* DESCRIPTION **************
Branch Name: eliu_gh_186_189_345_cleanup_and_make_optimizer_arguments_consistent_fix_0_multistarts_bug
Ticket(s)/Issue(s): Closes #186 Closes #189 Closes #345 

    fixing bug where num_multistarts = 0 or num_random_samples = 0 could crash the server
    standardizing "status" dict outputs from C++ optimizers
    setting up defaults so that "null_optimizer" is usable from REST
    remove next_points output from GradientDescentOptimizer
    naming standardization

********* TESTING DONE *************
make test
visual check of REST endpoints
i'm going to leave that check in the top level functions. the reason being that others might do something invalid outside of the scope of this method (plus it's more consistent w/the other functions that require the check)

sorry about github's comparison powers being weak :(