ORM to Slick Draft, needs polishing

review by @szeiger 

Please already review this. I keep polishing it as we go a long.
> Actually I think tuples or case classes are a just fine and not less pragmatic.

Sometimes labelled members make things easier to follow. E.g. `(Double, Double)` is probably more error prone than `case class Position(latitude: Double, longitude: Double)`.