added testing framework and differentiated between time_value and key_value monitors