We can improve the vm-fdt abstractions after we publish an initial version of the crate so that we do not block the first release.
The current interface was built on purpose to be similar to the libfdt one, but we can optimize it (slightly) for Rust.
Things that can be improved are better abstractions for nodes. For example, we can have the property_* functions on the FdtWriterNode instead of FdtWriter so that we can disallow properties to be added in non valid locations (see #19).