hello Shadow Whist

I've had a play with some of the research parts of the other list (items 16 onwards). 

I've created a new file research.py and linked the Player class to it, so now the starting tech should be correct for each PRT, LRT mix (as a dict of {"energy" : 3, "propulsion" : 3 ....}). I've also created a function to calculate the resource cost of achieving a tech level, and another function to calcualte the cost in points of setting fields to expensive, cheap or selecting expensive tech start at 3\4 (not sure if you had anything related to race creation, it could probably do with being moved). There are unit tests for each function in test_research.py - I only noticed you used nose instead of unittest after I'd written a few, but nosetests call them anyway so I didn't both changing them.

This is the first open source project I've contributed to, most of my programming has been solo work doing numerical work related stuff in C\C++\fortan so feel free to point out if there are some things I've done that would be better differently. 

Regards

Mike