merging with upstream/master

Most of this is just updating my code to match yours, though I added the abstraction GRB_VARTYPE in place of char (not very important probably, but just in case).

I also tried my hand at adding some addvars functions, but these are generating some compile errors (it built and linked fine before I did that) related to 
undefined reference to 'atsruntime_malloc_undef'.