issues:
1. IPAddressField is deprecated. We can change this without consequence
because the underlying field type is not changed.
2. New admin was not wired up.
3. There was a admin bug when one end of the block is zero.
libraries get associated with a library_block table (IP ranges)
moved superlogin here
IP stuff mostly copied from
https://github.com/benliles/django-ipauth/blob/master/ipauth/models.py
The model is that you need to be in an allowed IP range to "join" a
library. Once you've joined, you can use your login from anywhere. to
use that library.
Asign IP ranges in admin