An ES2019 spec-compliant Array.prototype.flat shim/polyfill/replacement that works as far down as ES3.