This commit fixes a bug in the `bindgen!` macro for components where previously the `param` and `result` properties weren't properly calculated depending on the structure of the type and which types were visited in which order. This is simplified to use a `LiveTypes` structure from the `wit-parser` crate and relies on that to do necessary recursion.