WS is inconsistent.  Half of the types are in the WS object (i.e. WS.WSRequestHolder) and the other half are in the object but not prefixed (WS.Response) and then in the Scala API there are some which are just defined in the package.  Not only that, but  people import both ws._ and WS._, then use them in controllers and confuse a WS.Response with an MVC Response.

So, options:

1) Move everything inside WS._ and rename it not to have WS prefixes
2) Move everything to the ws package and add WS prefixes 
3) Move everything to the ws package and don't add WS prefixes.

I'm not thrilled with the options, but I think 2) is least confusing.