Disable IRQs around sdcard reads.

Once the code switches to using DMA, this can be removed.
stmhal: Protect SD_WriteBlocks by IRQ disable/enable pair.
Merge branch 'dhylands-fix-sdcard-read'
modsstruct: Foreign data interface module, roughly based on ctype ideas.

But much smaller and memory-efficient. Uses Python builtin data structures
(dict, tuple, int) to describe structure layout.

Currently, the only available docs are testcases.
modsstruct: Elaborate tests to check both packed and native structures.
modsstruct: Support assignment to scalar fields.
modsstruct: Implement bitfield setting.
modsstruct: Add write tests.