Add UploadedFile base class and Spreadsheet impl

We need protection around uploaded spreadsheet that are being submitted
for addition to a data set.

This needs to check whether the file looks right:
  - Is not too big or too small,
  - Has a valid content-type,
  - Not a virus!

I've pulled in the csv and excel parsing code from Backdrop and tweaked
them to fit the new admin app. This was done to retain a certain amount
of parity between the new and old uploader.
Try and make Excel do integers

All the numbers that come out of excel spreadsheets are floating point,
but we wan't to be able to define columns as being integers. This does a
little python fudge to see if the number is a valid integer and then
converts it.
Merge pull request #12 from alphagov/upload-spreadsheets

Upload spreadsheets