It's ludicrous that Office365 lacks a simple CRM or even a method for exchanging contacts. Five ways to handle contacts are listed on the "ways to manage contacts" page (in 365 admin->users->contacts->beyond contacts), but each has its own set of problems!
To share contacts among the team, we ended up using full contact. Tags may be sufficient for basic CRM requirements.
HubSpot is good and free otherwise, however one major flaw I discovered is that there is no way to back up all of your data (though you can export most of it).
Salesforce is, in my opinion, the finest in class, but it is also the most expensive. Other online CRMs I explored (there appear to be hundreds of clones) are nice, but they don't interface well with Office365.