[split] Create Buf.ByteBuffer to wrap java.nio.ByteBuffer

RB_ID=392117
[split] util-* Convert all tests in util to scalatest

Problem

specs is deprecated and throws a fair number of NullPointerExceptions in scala 2.10
Also all of our tests are disabled in scala 2.10 for sbt

Solution

Port all our tests to scalatest
This is based off of this PR: https://github.com/twitter/util/pull/97

Result

Tests pass

RB_ID=397681
[split] Buf, Reader: remove Buf.Eof; end-of-stream is None

Problem

The reader interface is complicated substantially by using 'Buf.Eof'
as a sentinel value. It is a value that's confusing and brittle to
compare against (e.g. object equality must be used), and is just
unintuitive.

Solution

Signal EOF using an Option, where None = EOF. This is straightforward
to inspect. This also means we have to make Reader.writable() Closable
in order to signal EOF.

RB_ID=394095
[split] Update README to reflect correct storage units.

Problem:

The prior example text in the README is incorrect:
* There are ~8 million bytes to the megabyte, not 8,192.
* The conversions library uses integer math; < 1 GB is reflected as '0'
  when the toGigabytes conversion is applied. The docs falsely imply
  that floating-point division is supported by the library.

Solution:
* Updated README.markdown to use examples that are not misleading, and
  that reflect the true output of scala interactive shell.

Signed-off-by: Moses Nakamura <mnakamura@twitter.com>

RB_ID=400189
TBR=true
[split] util-app: Simplifies the logic to get the appname

Signed-off-by: Moses Nakamura <mnakamura@twitter.com>

RB_ID=400191
TBR=true
[split] bump util to 6.18.2-SNAPSHOT

RB_ID=401255
TBR=true
[split] Rm former employees from OWNERS files of core libraries

RB_ID=401377
TBR=true
[split] [util] small improvements to Future.collect, Throw, Flag

- `Throw.{map,flatMap,flatten}` can do 0 allocations via using
  `asInstanceOf`
- `Flag.{apply,defaultString}` can give additional information in the
  exception when the flag is not found
- `Future.collect` can do less object allocations
- `TryTest` has an unused variable that could be removed

RB_ID=401989
[split] util-core: Fixes a broken sbt test

RB_ID=404611
[split] util-logging: java-friendly LoggerFactory API

Problem

HandlerFactory is difficult to use from java, as are case classes
and named arguments.

Solution

LoggerFactoryBuilder uses the Builder pattern to make LoggerFactory
easy to build.

RB_ID=405387