build: enable a smaller Intl (i18n / ICU) build

Implements joyent/node#7676 - see `README.md` for details.

Passes `make test` *as well as* current HEAD did (some network test failures?)

known TODOs:
- doc
  - [ ] Too much detail in the `README.md`. Move elsewhere/delete. 
- build
  - [x] Windows build? Rewrite `icu-generic.sh` in python and/or use cygwin?
      - [x] but, need to allow build of linked-in ICU data (large and small) in windows.
  - [x] Switch to turn on and off "little by default"
  - [ ] Enable use of any ICU (not just special SRL branch)
- v8 ( discussion here: https://groups.google.com/forum/#!topic/v8-dev/uAdEzPBcdXE ) 
  - [x] need `InitializeICU` function https://code.google.com/p/v8/issues/detail?id=3344  ( workaround: could call the ICU functions directly from node..    )  *Update: v8's preference may be that node call into ICU directly here for setup. Fine, I can move that code out of deps/v8 and into node.cc or elsewhere. *
  - [x] bug fixes to v8  https://code.google.com/p/v8/issues/detail?id=3348  *not a hard dependency, I can take this out of the PR*
  - [x] Save 1M by turning off breakiterator if unneeded https://code.google.com/p/v8/issues/detail?id=3345   *This saves 1M - but can pull it out of the PR also. *
- ICU
    - [ ] the "smaller ICU" changes could be pushed into a future ICU version.

NB: I have signed the CLA, you will find me under `srloomis` at US dot IBM dot COM
ICU has 3 values for "endianness", the third is "e" for "EBCDIC". So that's what I had in my head.
sys.byteorder[0] will work fine here. What I'm trying to support is (1) a downloaded file (always little endian) otherwise (2) a locally-built file (in your "platform's endianness" which is of course big in that case).