Add tests
Allow char array to pack ints >= 256

Pack ints when they are >= 256 (bytes([i]) and bytearray([i]) can't do
it) and pack ints as 4 bytes in all cases. This assumes that if
something is packed as 'c' and is not a string, it is an int, which I'm
not sure of, but is the case for things like atoms, and so is necessary
for actions like doing ChangeProperty (which packs atoms (i.e. ints) to
'c') to set WM_PROTOCOLS.
Add List.to_atoms method
Pack without using `.buf()`