CRM software explained — what it does, who needs one, and how to choose between HubSpot, Salesforce, and others for small and growing businesses.