MakeMKV + Handbrake for me is the ultimate setup.
H.264 is the way to go. There are some compatibility issues with older devices that don't support some of the newer profiles but that is solved on a device by device basis. My preference is to create a baseline preset that all you're rips should follow for future proofing, and if you need to create an alternate set for maybe a particular device you can use a preset that is catered to that device and create an alternate set for that.
Virtually all major streaming appliances (XB360, PS3, WDLive, Roku, etc) have full h.264 support. Mobile devices and more specifically Apple tends to be problematic because they don't support all h.264 profiles. Handbrake has profiles for those particular devices.
Just be wary of when to use 64-bit containers and device support. A standard .mp4 container can only be 4GB large or the video won't work. Handbrake will still make the files, but you might be left scratching your head about why they won't play. The "Large File Size" option in Handbrake uses the 64-bit container, which allows file sizes to exceed 4GB and thus is more apt for HD movies, but some mobile devices might not play them. Not really an issue when streaming usually. The upcoming XB1 and PS4 both support NTFS and should support full 64-bit containers so by then hopefully it becomes a non issue soon.