History API: как насчёт обёртки?

Может не будем вот так вот голыми руками History API использовать?
Плюс хочется fallback на hashchange.
Обернём?