revise modern? to exclude old, broken versions of webkit-based browsers

modern? no longer includes old, broken versions of Safari (mobile or desktop, less than v4.1) or Chrome (less than v3.x).

my previous pull request was closed, but it looks like the previous merge didn't quite succeed. rebased off of master as of right now, with tests added. tested with Safari 3.2 on Windows XP. 

PS: Technically, the existing IPHONE and IPAD entries in the UA list should be renamed to OLD_IPHONE and OLD_IPAD, as someone would have to somehow be using iOS 2.x for web browsing of modern sites but somehow still never have installed a firmware update.
Prefer double-quoted strings unless you need single quotes to avoid extra backslashes for escaping.