Add support for boost::optional

Copyright notice is identical to your original wording, with my name there instead.
This should be sufficient to support boost::optional