I actually think you can take it a step further. I have my caps lock mapped to esc on single press and as opt + control when held but I also use something I call sticky keys that allow me to keep my hands on the keyboard and on the home row at all times.
[Here it is and how I use it.](https://github.com/nikitavoloboev/dotfiles/tree/master/karab...)