encapsulate javascript functions into prototypes
further encapulate javascript functions into private and privileged functions so you cannot poke things you shouldn't be able to
encapsulate the logging API