It's essentially simple. What I have breadboarded and working right now is based on a Raspberry Pi (although I won't be using the Pi in the end, as it's too bulky -- I'll be using the functional equivalent on a board I'm designing). I'm using a 4G module to provide the cell functionality (you communicate with it much like with a modem) and a 4" LCD touch panel for the display. It is running Linux as the OS, with some custom code for things like the phone dialer, etc. It also has the other usual features like WiFi, Bluetooth, etc.
It's really nothing more than a small Linux computer with a cell phone module attached. That was one of my design goals -- I wanted a real OS rather than something like Android. The only thing that I'm not entirely happy with at the moment is power draw, but I can greatly reduce that with a bit more work.