oojs in progress, code not breaking at least, to be more oojs