Fixed #21231 -- Added mechanism to limit request data upload size.

Added settings.DATA_UPLOAD_MAX_MEMORY_SIZE, similar to the existing
FILE_UPLOAD_MAX_MEMORY_SIZE, and raised SuspiciousOperation on
requests that exceed it.
If no content-length is sent, read() will try to read the entire request into memory. Wouldn't it make sense to limit this read() as well to settings.DATA_UPLOAD_MAX_MEMORY_SIZE if it is set?