flake8: ignore new migrations directories and fix warnings

Fixing the warnings also highlighted a bug where the shipping
models weren't checking if they're registered already, which would've
prevented overriding them.

Also bumps the flake8 version because it's considerably faster
(multiprocessing!) and contains Python 3.4 fixes.
Add appropriate deconstruct() methods for Oscar's custom field

Those are needed to support the new migrations framework:
https://docs.djangoproject.com/en/dev/howto/custom-model-fields/#field-deconstruction

I think I'm doing the right thing. But I'm not entirely sure.
Add new-style migrations

These were created with the new migrations framework. Nice and simple!