better $.browser detection