Add Flags<T> class as a type-safe way of storing OR-combinations of enums.

TEST=base-unittests
R=svenpanne@chromium.org

Review URL: https://codereview.chromium.org/510773002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23453 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Merge remote-tracking branch 'upstream/bleeding_edge' into bleeding_edge