Update READNE for scripts
Separate header files into c/cc files, Makefile

I finally learned how the C/C++ compilation model works.

Instead of having function definitions within .h header files, they've
been moved into separate .c or .cc files.

This separates implementation in the .c files and interface in the
.h headers.

(OOP for once!)

And this also changes the makefile structures to be less modular.
They use pattern rule matcing at the cost of embedding object filenames
into the compile lines.