[SB][Wifi] More protection against invalid values from WifiTrackerLib.

This change creates new factory methods for WifiNetworkModel.Active and
WifiNetworkModel.CarrierMerged that will ensure the parameters are valid
before creating the object. This means that WifiRepositoryImpl doesn't
need to save the level or subscription ID to local variables.

Most of the diffs in this change is converting all WifiNetworkModel
clients to use the factory method instead of the normal constructor (the
normal constructor is now private).

Bug: 362384551
Flag: EXEMPT bugfix
Test: atest WifiRepositoryImplTest
Change-Id: Id295c2ecb15bc7a1931661b887a25ca4dd993927
19 files changed