LUKS encrypted partitions resize support.
Known issues: - `LUKSFormat` has "wrong" `min_size` -- because minimal size depends on minimal size of LUKS device's format, it's not possible to set it for LUKS format. Slave device, LUKS device and filesystem have correct min_size. - Both `LUKSFormat` and `LUKSDevice` don't have `max_size` -- it depends on the slave device. We don't set max_size for formats (just limits), so it probably makes sense to set the max size correctly just for the slave device. But it would be easy to set the max_size correctly for the LUKS device. - Tasks -- I just took code from mulhern's original pull request and made changes to make pep8 and pylint happy. It works, but I don't have idea how :) - `FSError` and `FSResizeError` -- original `do_resize` and `_set_target_size` raised only these exceptions but it doesn't make sense for "non-filesystems". I've tried to change it to raise `DeviceFormatError` and `FormatResizeError` where it makes sense. Not sure if this is the best way. - There are no tests. I will add some next week.