Major update - redesign of all remote call (now asynchronous) and divided the js code into various files