So `FIXED_ONE_BYTE_STRING` now returns internalized string (I thought about introducing `FIXED_ONE_BYTE_INTERNALIZED_STRING` instead of `FIXED_ONE_BYTE_NORMAL_STRING`, but gave up in the middle because it changed too many lines). Internalizing random strings has the two side-effects 

1. occupying V8's string table with garbage and hence adding the chance of hash collision when another string is internalized.
2. making the string not GCable because the string table keeps a reference to that string forever (V8 doesn't seem to clear the string table at all).

Also, creating an internalized string is slower because the hash has to be calculated. Pre-internalizing a property name before `Set()` is totally a win because `Set()` has to create an internalized strong before storing that to the property table/list anyway.

So the rule of thumb is this: use `FIXED_ONE_BYTE_STRING` if that's a property name, use `FIXED_ONE_BYTE_NORMAL_STRING` otherwise.

Now, exception. For a property name allocation before `Get()`, I think it's pretty difficult to judge if pre-internalizing is a good thing because `Get()` doesn't need to internalize to input string. I gave `"beforeExit"` and `"internalMessage"` `FIXED_ONE_BYTE_NORMAL_STRING` because they are not for 100% property names (for `"internalMessage"`, if you don't use `child_process` nor `cluster`, `"internalMessage"` is never internalized).

Oh crap, this explanation is too long......