Drawing directly on the screen (frame buffer) is actually much faster than using X when you are using Broadcom's VideoCore (OpenVG) library. The major resources you need to look at, including examples and source code, are already pre-installed on Rapsberry Pi. For example, try this in console mode:
cd /opt/vc/src/hello_pi/hello_triangle
sudo make
./hello_triangle
You will see a full screen GUI is shown. You may also want to look at a very nice wrapper library that makes using OpenVG much easier, which includes additional very nice examples.
For starting up a program automatically, you can add it in your /etc/rc.local file, just before exit 0, like this:
#....
if [ "$_IP" ]; then
  printf "My IP address is %s\n" "$_IP"
fi
/your/path/your_fancy_gui &>/dev/null &
exit 0
Note you need to use & to put the program in the background, or the system boot sequence would be stopped there until you program quits.
sudo nano ~/.config/autostart/FullScreenApp.desktopand then use pygtkgtk.Window.fullscreen()(I didn't try) – Thomas Weller Jul 27 '16 at 22:16