fix broken build
fix broken test

Always initialize variables to avoid running into undefined behavior.
cleanup

Keep the 2n+1 logic in a single place.
Make it more clear that the new_ local vars are to guard against the error
condition of running out of memory. (Wish we could write a test for that!)
update to http url
https, not http
wow i need to check on typos
syntax not the same
reuse CFLAGS, so all the same mode. remove -static since OS X cannot do static (super easily).
update todo
fix style and remove (bad?) assert
Merge branch 'kartik'