Move towards LavObject (does not compile):

LavObject exists, the libaudioverse.h public header is updated to use it in place of the more specialized
structs, and some core functionality has been rewritten.
Code does not compile: updates are needed across other parts of the library first.
empty header for private object functions
Add the private object creation functions to header
Major refactoring to graphs to use LavObject
Fixed most compiler errors in the plumming
Compilation advances to linking stage
Library links again
All examples compile and link
Time_convolution compiles and links
We have audio output once more
Many small fixes
Updated the tests to use LavObject

This was mostly find/replace, with minor ffi.cast usage.
Merge branch 'lavobject'

This is a fastforward, but includes many points in which the code doesn't compile.