Move ClassLoaderUtils

This patch makes an attempt at unifying and improving the two
ClassLoaderUtils versions we have available. This is a prerequisite to
being able to being able to maintain them properly.

At this point the sanest place for them is yang-binding, as it has
guava, slf4j and is at least transitively pulled from all users.

Change-Id: Iea7ae5fb7ef40f9af960ca01b000f81237c70ab0
Signed-off-by: Robert Varga <rovarga@cisco.com>
(cherry picked from commit ea042f82433b98d89f26843453caffc44d5c7388)
BUG-987: improve generated type allocation

This patch improves ArrayList allocation such it does not waste space in
generated types, since we know how big an array we need before hand. We
also use singletonList() and emptyList() as appropriate. Shaves off
about 2MB from retained size on a vanilla SP edition.

Change-Id: Ief18a029613f14c13abc985aa60388b704bae79e
Signed-off-by: Robert Varga <rovarga@cisco.com>
(cherry picked from commit 98621330fafd1ef1078c26ba1b04b3060692a4c1)
Merge "Move ClassLoaderUtils" into stable/hydrogen
Merge "BUG-987: improve generated type allocation" into stable/hydrogen