Parse headers that contain '=' correctly

When using $request->getHeader('Link')->getLink('next') and the URL
contains an '=' (ie, ?page=2), the =2 part was being dropped because of
the explode on '=' on all elements after the explode on ';'.

Key=value pairs are only expected AFTER the ';', so this commit ensures
that this is honoured.
Allows free format for headers

Only split on '=' if it is not contained within an angle bracket pair
[<>]. This allows for compatibility with headers like Cache-Control
which do not specify a semi colon before key value pairs whilst still
being able to parse the Link header correctly.
Adds test for URL containing '='
Adds test to Header parseParams
Fixes todo on splitting headers by ';'
Merge remote-tracking branch 'blongden/master'
Tweaking param parsing