generalising pool to a generic object pool; factoring out slick pool logic to specific subclasses in slick package

also, getting rid of abstract interfaces of Pool and PoolFactory, because these make no sense at this point; these may be added back later

Signed-off-by: Mikolaj Szabo <savingprivateblue@gmail.com>