PTFM-12783 Fix file part sizes for large (>~ 160GB) files

* Improper division in mmap-specific computation resulted in too low
  buffer sizes for platform-external uploads larger than 160GB (or
  internal uploads larger than 960GB) that are backed by a real file.
* Add assertions to fail-fast the file upload if a similar situation is
  detected in the future
* Factor the relevant code into a separate method and add regression
  tests
* Ensure that part size is mmappable even if dxfile.DEFAULT_BUFFER_SIZE
  is not (admittedly unlikely unless user overrides the size)
* For consistency, dividing file size by 10000 now also uses math.ceil
  in the proper way instead of doing integer division and adding 1