added usage example and test