From a programming and code management standpoint, it makes a lot of sense to organize the commands around a single Python environment, but from a user prospective (and I say this as a programmer), the implementation of map algebra in 9.4 could lead to some disgruntled users.
For example, pre-9.4, the raster calculator enabled you to enter a map algebra command into a single line. In addition, a map algebra function could be constructed through clicking buttons on the calculator. This was congruent with the query tool functionality and enabled novice users to easily get acquainted with map algebra.
In 9.4, it seems that the only method for issuing even a simple map algebra command that leverages spatial analyst, requires a few lines of Python code to import arcpy, import the spatial analyst module, and then write the line of map algebra. From a user perspective, this doesn't make their lives easier; this adds unnecessary complexity to what used to be a simple function.
It's analogous to how it was easy to calculate geometry in ArcView 3.x, and then in ArcGIS 8.x we had to write a few lines of VBA. People didn't like that because it made a simple function more complicated than it should be (and used to be). So in ArcGIS 9.x, the calculate geometry function was added to the context menu of the attribute table.
It's not that Python is a bad way of doing this; it makes sense to leverage it under the hood and expose it more command line oriented user and programmers. But I think it may be good to wrap some dialogs around the Python functionality so users are forced to write multi-line commands for functions they used to perform via dialogs. A lot of what I've heard about the UI goals of 9.4 is about simplifying workflow and the complexity that evolved in the pre-9.4 UI. This doesn't fit that model.
Just my thoughts from a usability perspective. I'm open to discussion on this.