move parse logic to webworker, some minor tweaks