Fair Value Measurement - Reconciliation of Changes in Contingent Consideration Liabilities (Details) - Fair Value, Inputs, Level 3 [Member] - Contingent Consideration [Member] - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2016
Sep. 30, 2015
Sep. 30, 2016
Sep. 30, 2015
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]        
Beginning balance $ (7,054) $ (1,400) $ (3,770) $ (1,400)
Settlement of TFS earn-out for year ended December 31, 2015     1,000 0
Ending balance (6,752) (3,800) (6,752) (3,800)
Avantas [Member]        
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]        
Change in fair value of contingent consideration earn-out liability from acquisition 0 300 660 300
TFS [Member]        
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]        
Change in fair value of contingent consideration earn-out liability from acquisition (94) 0 (859) 0
Contingent consideration earn-out liability from acquisition 0 (2,700) 0 (2,700)
HSG [Member]        
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]        
Change in fair value of contingent consideration earn-out liability from acquisition (84) 0 (193) 0
Contingent consideration earn-out liability from acquisition     (3,590) 0
Peak [Member]        
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]        
Change in fair value of contingent consideration earn-out liability from acquisition $ 480 $ 0 480 0
Contingent consideration earn-out liability from acquisition     $ (480) $ 0