Cleaning Up

- Strip unnecessary type casting in general.

- More efficient type checking & enumeration.

- More efficient __.flatten(array, shallow);

- Remove __.toArray(array);

- Remove BBM.fn.extend(extendObj);

- Slightly more optimized BBM.fn.toHTML() regarding header
  printing; Smarter choices of function calls.

  **Fix**: Avoid modifying the option object passed into
  BBM.fn.toHTML(options);

- Add BBM.fn.pruneText() as part of the BBM.fn.prune()
  pipeline to collapse text nodes.

- Explicitly put `var` keyword before every variable
  declarations.