Rewrote AudioProperties classes to use smart pointers