Simplify ClosableLazy

* Fix the type annotation so that null is a subtype of T
* Use a closure to handle closing rather than a special member type
Prevent ClosableLazy deadlock when get is called during close

Fixes #2986.
fix deprecation warnings in build files
Merge branch 'fix-warning-build-file' of github.com:xuwei-k/Play20
Merge pull request #2993 from richdougherty/closable-lazy-deadlock

Simplify ClosableLazy and prevent deadlock
avoid constructing unnecessary objects
Fix statement preparation in batch (No longer use SqlQuery at batch creation)
Merge pull request #3016 from cchantep/fix-3016

Anorm BatchSql throws an error when executed since Play 2.3
Merge pull request #3018 from yanns/ws-mini-fixes

avoid constructing unnecessary objects