All these mapping libraries are great.
Google Maps comes with great data. Leaflet has a really nice API. OpenLayers 3 comes with loads of functionality built in.
Please check out our OpenLayers 3 examples at http://ol3js.org/en/master/examples/
Interesting ones include:
Full screen rotate and zoom: http://ol3js.org/en/master/examples/full-screen-drag-rotate-...
Animation: http://ol3js.org/en/master/examples/animation.html
60fps heatmaps: http://ol3js.org/en/master/examples/heatmap-earthquakes.html
High quality KML rendering: http://ol3js.org/en/master/examples/kml.html
Detailed geometries: http://ol3js.org/en/master/examples/igc.html
Canvas effects: http://ol3js.org/en/master/examples/layer-spy.html
Canvas, DOM and WebGL renders: http://ol3js.org/en/master/examples/side-by-side.html
Full application with OpenLayers 3, Angular and Bootstrap: http://map.geo.admin.ch/