Separate backup

Recommended to review by commit as I try to structure it as refactoring goes. My intention is also to use it as tutoring material for some refactoring presentation.
after discussion it looks like the best result is `Bootloader::BootRecordBackup.create_for(device)`