add read barrier to value.p

API changes:
- value.p must be accessed via mrb_value_p macro
- value.p must be mutated via MRB_SET_VALUE_P macro
implement 64bit nan-boxing
cosmetic changes
revert one of the API changes: MRB_SET_VALUE_P no longer used
bugfix: the bit mask was smaller than the size it should be
add commentary to value representation
fix bugs in comment
Merge branch 'full-nan-boxing' of https://github.com/wasabiz/mruby into wasabiz-full-nan-boxing
rename mrb_value_p() to mrb_ptr() since _p means predicate in mruby source