Myself and another developer ended up creating our own provider from scratch with our own equipment co-located at a reliable DC.
In all we used: Back-end: libvirt + kvm virtualization + ruby + go Front-end: siantra (control panel), WHCMS (billing), all integrated into one (sinatra is reversed proxied via lighttpd) Background / workers: resque + goworkers + some ruby workers
We're the first to introduce Atomic Project images.
We're still developing and continuing to add features. One of them being hourly billing as well as scaling.