Ok, I am home now and I can see how it's done...
Open iCal and Select Calendars to show the list of Calendars.
Right click the Calendar you want to share with your husband.
Select "Share Calendar..."
Enter his name/email address.
Make sure that "Public Calendar" is Not checked.
Click "Done".
An email is sent to him.
He'll then open his email and click on "Join Calendar"
icloud.com will open up for him so that he can sign in.
From there I assume that it'll be easy for him to figure it out. I can't really do it since I don't have two icloud accounts.
As for the Contacts. It's much easier to send him contacts from the Mac. As you can select more than one at a time and send them all at once.
Select the Contacts you want to share, Press and hold the "command" key as you select the contacts. So you can skip over some or what not.
Once done selecting them, Right click and select "Export vCard..."
Label it as you wish and save it.
Email him that file.
When he opens it up, it may ask him if he wants to accept these contacts. When he does, it'll self populate in his Contact list.
This is assuming that he has his own username on the Mac computer. Though it may still work if he's still sign into icloud.com from the Calendar process above.
Edit, I just emailed a file of 10 contacts to my other email address. Even though it's not an "iCloud" account. I was still successful into importing those 10 contacts with a single click.
KOT