Rename tag emplace to in_place

To conform to N3672.
Function emplace now returns void

To conform to N3672.
Remove namespace experimental

To conform to N3672.
cmake support from Jason Toffaletti
gcc 4.8 has is_trivially_destructible; others do not
silence no-return warnings
update test_optional for name and namespace changes