Break a User-Agent string into browser, engine, operating system (each with a version) and device type. Unidentifiable components are reported as null.