Pātuhitia tēnei: Navigation signal processing for GNSS software receivers