in chill-scala/src/main/scala/com/twitter/chill/KryoBase.scala [161:170]
def reflectAsm[T](t: Class[T]): Try[ObjectInstantiator[T]] =
try {
val access = ConstructorAccess.get(t)
// Try it once, because this isn't always successful:
access.newInstance
// Okay, looks good:
Success(forClass(t)(() => access.newInstance()))
} catch {
case x: Throwable => Failure(x)
}