added more services. pretty much a rewrite.