added order class and tests