A much improved version of FastOrigin is now on BlenderMarket, FlexOrigin and quite cheap to get.

It features multiple empties that control multiple object origins, and the empties are persistent while

you continue working on your scene.  Also realtime update when using modifiers like Mirror !!!!

Download FastOrigin - set object origin with snapping 

EWOCprojects paleajed@gmail.com

The FastOrigin addon enables one to interactively set the active objects origin, either by 3D
manipulator or Gkey with full support for snapping and realtime preview of this.


First go to User Preferences->Addons and enable the FastOrigin addon in the Object category.
Select an object.  Invoke addon (button in Tools panel).  When in Object mode, addon will switch into
EditMode and create a single selected vertex which can be translated by standard means with snapping
on for vertices (this can be changed in the standard way to other targets or no snap , the snap target
mode will be retained when using the addon a second time).  The 3D cursor will move along with the vert
to make the chosen position a bit clearer.  The old origin will remain visible during moving, this is
perfectly normal.
You can transform the view during operation.
Press ENTER to consolidate changes. 3D cursor and Editmode/Object mode
will be reset to before addon state.

REMARKS - works only for mesh objects
If you wish to hotkey FastOrigin:
In the Input section of User Preferences at the bottom of the 3D View > Object Mode section click 'Add New' button.
In the Operator Identifier box put 'object.fastorigin'.
Assign a hotkey.
Save as Default (Optional).