Для всего что вам нужно, есть QGraphicsView, больше ничего вроде не требуется.
1) img = QGraphicsPixmapItem(pix) - ваши изображения в сцене
img.rotate(angle) - поворот
img.resetTransform() - обнуление матрицы трансформации, может пригодится
2) чтобы видеть это без ущерба качества, нужно поставить соответствующие флаги:
view.setRenderHints(QPainter.Antialiasing | QPainter.SmoothPixmapTransform) (+ есть ещё и HighQualityAntialiasing)
3) драг-н-дроп такой же как и во всём фреймворке:
http://doc.trolltech.com/4.4/graphicsview.html#drag-and-dropЗ.Ы. Писать пример не хочется, а доку вы так и не прочитали:( Выкладывайте что у вас получится, посмотрим…