Virtual laboratory: an object-oriented framework