Sundry repackaging and shuffling functions

No (or minimal) functional change
Move IvyLock

Move publishsing to its own package

Move build related classes to their own package

Move tasks to new packages

Move compilation caches to new package

Move props test init from class to object

Rename MakerProps to Props

Props was in wrong directory

Remove unused import

Move implicits to one object

Remove Utils.scala

Move CollectionUtils functionality to an implicit

Make some proerties constants

Rename StringUtils to IntellijStringDistance

Remove OsUtils and Phase

Rename classes