foreign 0.3.3

Conversion between foreign and Rust types
Documentation
# 0.3.3

* check for allocation failure instead of dereferencing NULL
* `IntoForeign` takes a lifetime argument, and no longer requires
  `'static` storage; `Box<T>` and `Vec<T>` can be consumed for a
  borrowed `T`
* document lossy and panicking behavior when converting `String`;
  panic on interior NUL in `clone_to_foreign()`, as `into_foreign()`
  already did
* allow unsized targets in `OwnedPointer::into()`

# 0.3.2

* add `BorrowForeignMut` to prelude

# 0.3.1

* fix infinite recursion with `Option`
* fix use-after-free with `Cow`
* adjust MSRV to 1.64.0

# 0.3.0

* remove lifetime argument from `Borrowed\*Pointer`
* improved testing

# 0.2.0

* implement all traits for arrays
* support multidimensional arrays
* allow unsized boxes
* implement `IntoForeign` for `CString`
* allow mutation of the result of `into_foreign()`

# 0.1.1

* added repository to Cargo.toml
* removed dev-dependencies

# 0.1.0

* initial release to test upload