* Fix MKL build on MacOS
* Fix invalid return type, user_memory_->set_data_handle(buf) returns void.
* Fix type mismatch
* Implement downloading and linking of MKL repo on mac and windows
* Rework the way MKL libs are binded to avoid warnings and simplify code
* Switch to matching version of MKL-DNN
* Add mirror links
* Add renamed license file
* Add -fopenmp flag for linux mkl build as Slice op kernel is optimized using OpenMP
* Use clean_dep in the entire file for consistency
* Fix build. Constants are declrared as static in header outside the class scope now
* Reworked fix for `-openmp` flag using the suggestion from @gunan
Original version here b4d39c5226