updated libraries, cleanup Safe
split into a multiproject so core can be used without external dependencies; added an sbt plugin