You could adapt my open source project - http://sprello.codeplex.com/
If you've got a lot of items in your list you could take a performance hit if you just order things #1, #2, #3 etc - but you could get super smart and use ordering numbers 10, 20, 30 etc and then moving 30 in between 10 & 20 you only need to change it to 25. (Anyone who's ever programmed in BASIC will know where this comes from!)
This answer gives some more tips on where to start.
How can i reorder items or swap items in a list or lib(Drag and drop will be ideal)