[web] add std::optional (C++) <-> undefined (JS) marshalling
Summary:
This follows a similar approach outlined in D8552. I was inspired by searching the string "BindingType<std::optional" on GitHub. This project provided a good implementation.
Depends on D12735
Test Plan: I tested this as part of the getLatestMessageEdit API I introduce later in this stack. I tested that on both web and iOS, which required using the std::optional <-> undefined marshalling
Reviewers: kamil, tomek, marcin
Reviewed By: kamil, tomek
Differential Revision: https://phab.comm.dev/D12736