Implement BarcodeImageFactory

- Abstract image creation away
- Integrate factory with service and specs