Refactor build system: move CMake to repo root, clean WebApp dependencies, update documentation
This addresses accumulated technical debt in three areas:
## CMake build system nesting
The CMake build system lives under API/, creating unnecessary indirection. The project is the Snakeoil OS REST server - not a sub-module of something called "API". This nesting causes:
- Non-standard build commands (cmake -S ./API -B .rest_build instead of cmake -S . -B .rest_build)
- Hardcoded API/ path references scattered across scripts/common, deploy scripts, and dev scripts, all grepping into API/common.cmake and API/CMakeLists.txt for version info
- Confusing binary location (.rest_build/modules/snakeoil-rest instead of .rest_build/snakeoil-rest)
- Friction when onboarding or automating builds
Moving CMake to the repo root follows standard CMake conventions and eliminates the path indirection.
## WebApp npm dependency bloat
WebApp/package.json contains ~17 confirmed unused dependencies accumulated over time:
- Angular wrapper packages never imported (@asymmetrik/ngx-leaflet, angular2-chartjs, ngx-echarts, ng2-completer, ngx-cookie-service)
- Deprecated migration shims (rxjs-compat, codelyzer)
- Unused tooling (ts-node, npm-run-all, style-loader)
- Stale type definitions (@types/ws, @types/leaflet, @types/d3-color)
These inflate npm install time, add unnecessary security surface (127 vulnerabilities flagged in audit), and obscure what the project actually needs.
## Stale documentation
BUILD.md and AGENTS.md reference outdated paths and commands that no longer match the actual build process, causing confusion for developers and automation.
issue