[#9] Implement javascript engine. Closes #9