Handle the full layer attribution information

With this PR:
 - the ```OpenLayers.Layer``` attribution property accepts a string or an object. This object is the same as one gets when parsing WMS Capabilities: ```{title: "my compagny", href: "http://my.compagny.com", logo:{format:"image/png", width:10, height:10, href:"http://my.compagny.com/logo.png"}}```
 - the ```OpenLayers.Control.Attribution``` has been overhauled to accept both attribution types. In the case of an object, the attribution string becomes an attribution link, which can be customized by the way of the ```layerTemplate``` api property,
 - the ```OpenLayers.Format.WMC``` is able to serialize / deserialize the full attribution object. This information is stored in the Layer extension, since it is not standard.

Tests pass, please review.