TSSIM/JESIM final v34 - fault-area moment calculation

Change from v33:
- Removed the v33 moment workaround that treated negative subsidence nodes as part
  of the rupture footprint.
- Removed the empirical sqrt(8) M0 scale that was added together with that
  workaround.
- Mw/M0 now counts only direct rupture-footprint nodes:
    * positive/uplift source nodes
    * footprint-only nodes with height_m == 0 and slip_m > 0
  It excludes surrounding subsidence nodes with height_m < 0.
- Subsidence nodes still affect the initial water-height field, but they do not
  enlarge fault-plane area and do not carry slip for M0.

Kept from v32/v31/v30/v29:
- Subsidence nodes save/load with slip_m = 0.
- Advanced node tuning + multiselect.
- Advanced mode slip adjustment recalculates uplift height automatically.
- JESIM observations: all arrived stations sent every 5 minutes.
- packet_meaningful_update is packet-wide; per-station rise still marks peak update.
- 清水 removed.
- JESIM transmit-only mode stops simulation calculation at 60 hours.
- Observation timing uses external wall-clock 1x.
- No y-axis flip.
- Wave-speed correction remains rolled back.

Build:
  build_win_mingw.bat
Run relay:
  python jesim_ws_relay.py
