Clean up wcn struct by removing or moving variables

The main purpose of this patch is to remove unnecessary variables from the wcn struct.

Most of these are removed since they were the result of double book keeping.
In this case they are replaces by their original variable, most often from the
cfg80211 or mac80211 stack.

One patch moves a variable to a better struct.

I will submit more patches like this in the future, but lets start with these.