A generic client-side javascript file editor