Fixes for *_id_type > int

These patches modify the packed_range code to handle cases where we
don't want to pack everything into 32-bit integers.  This should fix
some runtime bugs in the 8-byte dof_id_type case.

As long as we've got another bug holding up the 0.9.2 release, it would be nice to get these fixes in there too, but I wouldn't trust them in a release tarball until/unless they receive some outside testing first.