* Add caching to binary build for more reliable build * Apply same logic to unittest workflow
* Clean up extension build mechanism and extension location * Add back the switch to depend on external sox * Remove print * Fix