If I understand correctly what you're trying to do, you're trying to look at the 36 seats that labour won, and compare them on metrics (e.g. fraction of the population which is university educated) to the other 614 seats.
One thing you could do is calculate what fraction of the total people in the 36 seats won by labour were university educated in 2011. You do this simply by summing the number of university educated people in those constituencies and dividing by the sum of populations of those constituencies (both variables on the UK census)
You then do the same for the other 614 constituencies.
You can then calculate the difference and you might find it is, say, 0.02. The way I would then proceed, is by Monte Carlo. I would, some number of times carry out the following procedure:
1: Split the UK randomly into two groups of constituencies, one of size 36 and one of size 614. In python, you could use the sklearn "train_test_split" method to do this (http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html) using test_size=36
2: Carry out the procedure outlined above of calculating the university educated fraction of the population in each, and then calculating the difference. Store the number
Once you've done this a number of times, plot a histogram of the differences. Is it the case that by chance alone, you usually see discrepancies of say 0.05-0.01, but in your particular split based on the election results, you're seeing a difference of 0.02?
You could also (either empirically, or by fitting a gaussian to your data if it looks normally distributed) see what fraction of the time, by randomly sampling, you get a difference of larger magnitude than then one you found. (note that here, magnitude is key. If you see a difference of +0.02 in your data, you need to record how often a difference greater than +0.02 or less than -0.02 is observed by change).
As for your first question, about the assumption of independence, I'm not sure I understand what you mean. What are you assuming to be independent of what? Ultimately, for what you're trying to do, I don't think this is relevant. You're ultimately trying to show, that the 36 constituencies which swung to labour look demographically different to those which did not, and that this effect is statistically significant. The former is trivial (literally a case of data wrangling and arithmetic, as stated above) and the latter is a case of getting a handle on if you took random combinations of UK parliamentary constituencies, would you generally see differences as large as the difference you see in your data (note, you'll always see some difference, the fraction of university educated people in each group is never going to be exactly the same), or whether only very particular samples of the data show these characteristics.