state based react router linked to url through parseUrl and toUrl functions, has working route blocking control mechanisim, and async initialisation phase