To answer your question:
Sandboxed apps are used in a "sandbox", basically, they are meant to test various things. Live apps are in the live environment, interacting with other users.
This is nothing new... If they want active and productive developers, they have to maintain their API...