added a concept called reset(), which is  a kind of initialization function.

init(): A class initializer that must be called just once
even when asuraInit() is called many times.

reset(): A class initializer that is invoked every time
asuraInit() is called.

Actually, asuraInit() should be called once in a general
application. This feature is added mainly for tests.