Android web dev mess: History.replaceState disappears after Android 2.3

In this instance, Android browser developers seemingly decided that the History API wasn't useful to anyone, so they got rid of it.

However, from what I gather, they left a broken pushState function in place - just to mess with feature detection code, which still thinks the History API is supported as a result.

This got fixed eventually - somewhere around Android 4.2. In the meantime, I'm stuck with using hash fragments and handling hash change events in the broken versions of the browser.