I can't find docs about it, consider:
// base map
attribution: 'Tiles by <a href="http://mapc.org">MAPC</a>,
Data by <a href="http://mass.gov/mgis">MassGIS</a>',
// bike lanes
So we added two tile layers to the map right? But which of the above two is set as a base layer now? Can a map have multiple base layers at once? (because I read somewhere base layers normally should be mutually exclusive).
Yes they are mutually exclusive in display so that means you can display only one layer at a time. It's not documented but the last layer added will become the base layer which is being displayed.
Extra: Can I change a base layer without using the layer control mechanism? (e.g. only programatically).
Yes you can using addLayer/removeLayer method.
map.removeLayer(base map layer name here); map.addLayer(bike lane layer name here);