Compiling under std=c89

MSVC only supports ~c89, but since we don't have continuous integration testing with windows, forcing travis to use C89 gcc is the next best thing. These are some fixes that make it actually compile.