Static logger

* Android is now an optional dependency.
* Logger will gently fallback to java println when Android is not found.
* Replaces flag with polymorphism
* Can include in core project and use for different flavours such as android/smoke/tests