Call validateRevision from forceInsert.

Added the logic to call validateRevision in the forceInsert to check that the
current revision abides by the validation (if any). The logic is copied as
it exists in the iOS version.

Issue Reference: https://github.com/couchbase/couchbase-lite-java-core/issues/206
Issue #206 - remove unneeded call rev.copyWithDocID

Also add some TODO's in the code to get it more in line w/ iOS version.

https://github.com/couchbase/couchbase-lite-java-core/issues/206

Conflicts:
	src/main/java/com/couchbase/lite/Database.java
fixes issue couchbase/couchbase-lite-android/issues/214

By setting the size of the underlying data on InputStreamBody at construction time, and returning the value in getContentLength(), this allows apache HTTPClient to send attachments to the server unchunked. Sync Gateway can handle chunked data but the current release of CouchDB (1.5.1 tested) can not.