There is an open GSM client stack in OsmocomBB: http://bb.osmocom.org/trac/wiki/Software/GettingStarted
It only works with certain baseband chips though, but has already been used to crack the A5/1 GSM crypto:
http://www.youtube.com/watch?v=ZrbatnnRxFc
Many of the other things you mention can already be done by using off the shelf GSM baseband chips, since they don't necessarily do much access control of what gets sent.