Fair Value Measurement - Narrative (Details) - USD ($)
6 Months Ended
Jun. 30, 2017
Jun. 30, 2016
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Probability of reaching the forecast (as a percent) 100.00%  
Payment of contingent consideration due to seller $ 694,533 $ 2,086,243
Receipt of contingent consideration due from seller 500,000 750,000
Level 3    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Change in fair value 364,533  
Payment of contingent consideration due to seller 694,533  
Selling, general and administrative expenses | Level 3    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Change in fair value $ 285,805 $ (120,948)
Minimum    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Discount rate used to determine fair value of contingent consideration 5.00%  
Maximum    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Discount rate used to determine fair value of contingent consideration 6.00%  
Contingent consideration    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Contingent consideration due to seller $ (1,400,000)  
Contingent consideration    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Contingent consideration due from seller $ 0