OpenALEngine: Refactor to use PIMPL idiom