Merge pull request #966 from chrox/collapsible_toc

refactoring readertoc and readerfooter
fix typo
fix #976
plugin modules have 'name' field
guess plugin name from plugin path
refactoring module registration in readerui
now every module can be looked up in readerui so that
unit test of these modules is possible.