HTTP User Agent parser