Short version: split devices.py into 18 files under blivet/devices/. See the pull request for details: https://github.com/dwlehman/blivet/pull/9 I love the improvement in terms of organization, but it does wreak havoc on git blame for some of the new files. I'd appreciate feedback on this. Thanks.