We can build on linux
Make the make_cffi.py script moree resilient to platform
Revert "Make the make_cffi.py script moree resilient to platform"

This reverts commit 110c50b69c674f28050bd14ae50e50b9a07d9df9.
Revert "Revert "Make the make_cffi.py script moree resilient to platform""

This reverts commit a81d9fd8fc7b5fe1d18e15bd3aad1de81dcdac80.
Remove the matrix tests
Update the Lav_PUBLIC_FUNCTION logic
Set -std=c99 and -std=c++99 on linux targets
Tests run and pass on linux
Removed duplicate code that is now in transmat
Added transmat as a submodule
Cmake is smarter than I thought: got rid of link_directories directives
Make libaudioverse always build to top-level dir
Make tables and most libaudioverse types private
Typedef and make field for an internal property changed callback
Implemented internal feature, post_changed_callback
Refactoring: abstracted out property tables

In the process, this makes nodes completely private, and only exposes concrete implementations.
I am going to solve this and allow nodes in client languages with a specific type rather than a generic one.
Update the tests to use the property table support
First use of the property_changed_callback: hrtf

The Hrtf node now recomputes the hrir only as needed.
Actually do what I claimed in the last commit.
Declared functions and prototypes for float3 and float6 properties