Updated version and made Runnable inner class just a normal inner class since it was not being used in the context of a Thread. This is to support some aspectJ work in the Android app