Squashed 'VRFoundationToolkit/Requirements/libextobjc/' content from commit ce5ce01

git-subtree-dir: VRFoundationToolkit/Requirements/libextobjc
git-subtree-split: ce5ce01d41543acd802f27330a69267df9ce1eef
Merge commit 'c4957396a507084240ce32f9ccecb7af9892f40e' as 'VRFoundationToolkit/Requirements/libextobjc'
Macros are introduced:
VRPRECONDITIONS_...  - checks provided list of conditions, reports error and asserts if one of condition fails.
VRENUM_TYPEDEF_AND_UTILS - creates typedef enum { ... } TName; and declares inline functions: isValidTName() for bounds check and NSStringFromTName() to receive string representation of passed value's constant.