Half hearted commit. I didnt really organise the features in this one :P