javascript  object oriented framework