Initial working version. Need more work for artifact lifecycle and storage.