Add two codeplug primitives - codeplugAllChannelsIndexSetUnused() (frees a
channel slot: clears the in-use bitmap bit, persists the header, fixes counts)
and codeplugZoneRemoveChannelFromZoneAndSave() (removes a channel from a zone's
list) - and wire two new Channel quick-menu items:
- 'new channel': allocates the first free slot, writes a blank 145.500 FM
channel, adds it to the current zone, reloads the zone and opens Channel
Details to edit it.
- 'Delete Channel': confirmation, then scrubs the channel from every real zone
before freeing the slot. Guards against deleting the last channel and honours
the read-only/APRS lock.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>