Remove extra headers from runtime/base/types.h

Summary: It was pulling in stuff like util/mutex.h and not using them, just kill
them and add new includes to whoever breaks.

Move out FuncIdSet into prof-data.h, which was the only user of
it. I suspect OffsetSet is similar in how it's only used by
region-selection, but that'll be for a later diff.

Also move the litstr comment, it somehow got pushed above the collection
type stuff.

Reviewed By: @edwinsmith

Differential Revision: D1704241

Signature: t1:1704241:1416955147:a78d134d03a8ee04010b68805f050a7fd8be497e
Group fields of File, Socket, and SSLSocket

Summary: Put all the field decls together at the end of the class, reorder
a few of them so they pack better, and simplify initialization
where possible. No functionality changes.

Reviewed By: @jdelong

Differential Revision: D1719063
Remove util/hash-map-typedefs.h include from base/types.h

Summary: Making base/types.h even cheaper. Moves OffsetSet to vm/hhbc.h. Adds
includes of util/functional.h and util/hash-map-typedefs.h where needed.

Reviewed By: @swtaarrs

Differential Revision: D1705088

Signature: t1:1705088:1416963206:fb0d6bae9f22f8b0e2fb6b28406b6fd4bb509927