[container/set] Use an empty struct instead of bool as map value for set.

Traditionally, sets implemented with Go builtin maps use a `struct{}` type for values, since that type has a width of 0 bits.

Here's a blog post from Dave Cheney on the topic: http://dave.cheney.net/2014/03/25/the-empty-struct