Re-write for refiller module

Probably not 100% finished, although it provides all necessary functionality.  Only some refining to do, but its stable and functional enough for a PR.  At least people will get to use it.  Tested and everything.