Pu fix bibindex admin

Adds all the legacy admin interfaces to the `/admin` page, under the same category, so they are easily reachable. 
2: I102 copyright year is outdated, expected 2014 but got 2012
27:6: E126 continuation line over-indented for hanging indent
62:25: E251 unexpected spaces around keyword / parameter equals
62:27: E251 unexpected spaces around keyword / parameter equals
62: D202 No blank lines allowed *after* function docstring, found 1
62: D400 First line should end with '.', not 'l'
69:1: E302 expected 2 blank lines, found 1
69: D209 Put multi-line docstring closing quotes on separate line
69: D202 No blank lines allowed *after* function docstring, found 1
69: D400 First line should end with '.', not 's'
69: D205 Blank line missing between one-line summary and description
128:1: E302 expected 2 blank lines, found 1
128: D209 Put multi-line docstring closing quotes on separate line
128: D202 No blank lines allowed *after* function docstring, found 1
128: D400 First line should end with '.', not 's'
128: D205 Blank line missing between one-line summary and description
163:1: E302 expected 2 blank lines, found 1
163: D209 Put multi-line docstring closing quotes on separate line
163: D202 No blank lines allowed *after* function docstring, found 1
163: D205 Blank line missing between one-line summary and description
213:1: E302 expected 2 blank lines, found 1
213: D209 Put multi-line docstring closing quotes on separate line
213: D202 No blank lines allowed *after* function docstring, found 1
213: D205 Blank line missing between one-line summary and description
245:5: E303 too many blank lines (2)
303: D103 Docstring missing
331: D103 Docstring missing
446: D103 Docstring missing
463:9: E122 continuation line missing indentation or outdented
464:9: E128 continuation line under-indented for visual indent
465:9: E128 continuation line under-indented for visual indent
475: D202 No blank lines allowed *after* function docstring, found 1
480:5: F841 local variable 'fin_output' is assigned to but never used
510: D202 No blank lines allowed *after* function docstring, found 1
543: D202 No blank lines allowed *after* function docstring, found 1
548:5: F841 local variable 'fin_output' is assigned to but never used
578:1: E302 expected 2 blank lines, found 1
578: D209 Put multi-line docstring closing quotes on separate line
578: D202 No blank lines allowed *after* function docstring, found 1
578: D205 Blank line missing between one-line summary and description
608: D209 Put multi-line docstring closing quotes on separate line
608: D205 Blank line missing between one-line summary and description
608: D208 Docstring is over-indented
662: D209 Put multi-line docstring closing quotes on separate line
662: D202 No blank lines allowed *after* function docstring, found 1
662: D400 First line should end with '.', not 'x'
662: D205 Blank line missing between one-line summary and description
687:17: E221 multiple spaces before operator
708:9: E303 too many blank lines (2)
714:41: F841 local variable 'e' is assigned to but never used
717:26: E231 missing whitespace after ','
741:1: E302 expected 2 blank lines, found 1
741: D209 Put multi-line docstring closing quotes on separate line
741: D202 No blank lines allowed *after* function docstring, found 1
741: D400 First line should end with '.', not 'd'
741: D205 Blank line missing between one-line summary and description
766:17: E221 multiple spaces before operator
786:9: E303 too many blank lines (2)
792:41: F841 local variable 'e' is assigned to but never used
795:26: E231 missing whitespace after ','
819:1: E302 expected 2 blank lines, found 1
819: D209 Put multi-line docstring closing quotes on separate line
819: D202 No blank lines allowed *after* function docstring, found 1
819: D205 Blank line missing between one-line summary and description
834:18: E231 missing whitespace after ','
859:1: E302 expected 2 blank lines, found 1
859: D209 Put multi-line docstring closing quotes on separate line
859: D202 No blank lines allowed *after* function docstring, found 1
859: D205 Blank line missing between one-line summary and description
897: D209 Put multi-line docstring closing quotes on separate line
897: D202 No blank lines allowed *after* function docstring, found 1
897: D205 Blank line missing between one-line summary and description
904:28: E231 missing whitespace after ','
930:1: E302 expected 2 blank lines, found 1
930: D202 No blank lines allowed *after* function docstring, found 1
930: D205 Blank line missing between one-line summary and description
940:11: E221 multiple spaces before operator
969:1: E302 expected 2 blank lines, found 1
969: D202 No blank lines allowed *after* function docstring, found 1
969: D205 Blank line missing between one-line summary and description
976:15: E221 multiple spaces before operator
985:40: E128 continuation line under-indented for visual indent
986:40: E128 continuation line under-indented for visual indent
987:40: E128 continuation line under-indented for visual indent
988:40: E128 continuation line under-indented for visual indent
1006: D205 Blank line missing between one-line summary and description
1006: D208 Docstring is over-indented
1050:1: E303 too many blank lines (3)
1050: D209 Put multi-line docstring closing quotes on separate line
1050: D400 First line should end with '.', not 'x'
1050: D205 Blank line missing between one-line summary and description
1050: D208 Docstring is over-indented
1056:78: E261 at least two spaces before inline comment
1056:79: E262 inline comment should start with '# '
1079:29: E127 continuation line over-indented for visual indent
1134:15: E221 multiple spaces before operator
1144: D400 First line should end with '.', not 't'
1144: D205 Blank line missing between one-line summary and description
1144: D208 Docstring is over-indented
1159: D103 Docstring missing
1168:5: F841 local variable 'col_dict' is assigned to but never used
1171:17: E231 missing whitespace after ','
1177:49: E202 whitespace before ')'
1185:33: E222 multiple spaces after operator
1207:1: E302 expected 2 blank lines, found 1
1207: D209 Put multi-line docstring closing quotes on separate line
1207: D202 No blank lines allowed *after* function docstring, found 1
1207: D205 Blank line missing between one-line summary and description
1213:13: E221 multiple spaces before operator
1214:11: E221 multiple spaces before operator
1243:15: E221 multiple spaces before operator
1252:1: E302 expected 2 blank lines, found 1
1252: D209 Put multi-line docstring closing quotes on separate line
1252: D202 No blank lines allowed *after* function docstring, found 1
1252: D205 Blank line missing between one-line summary and description
1257:13: E221 multiple spaces before operator
1258:11: E221 multiple spaces before operator
1301:36: E128 continuation line under-indented for visual indent
1302:36: E128 continuation line under-indented for visual indent
1303:36: E128 continuation line under-indented for visual indent
1304:36: E128 continuation line under-indented for visual indent
1305:36: E128 continuation line under-indented for visual indent
1306:36: E128 continuation line under-indented for visual indent
1316:15: E221 multiple spaces before operator
1326: D209 Put multi-line docstring closing quotes on separate line
1326: D205 Blank line missing between one-line summary and description
1326: D208 Docstring is over-indented
1330:13: E221 multiple spaces before operator
1331:11: E221 multiple spaces before operator
1350:31: E225 missing whitespace around operator
1362:45: E225 missing whitespace around operator
1368:23: E225 missing whitespace around operator
1371:25: E225 missing whitespace around operator
1372:34: E231 missing whitespace after ':'
1375:15: E221 multiple spaces before operator
1385: D202 No blank lines allowed *after* function docstring, found 1
1385: D205 Blank line missing between one-line summary and description
1385: D208 Docstring is over-indented
1473:1: E303 too many blank lines (3)
1473: D202 No blank lines allowed *after* function docstring, found 1
1473: D400 First line should end with '.', not 'n'
1473: D205 Blank line missing between one-line summary and description
1473: D208 Docstring is over-indented
1496:76: E221 multiple spaces before operator
1537: D209 Put multi-line docstring closing quotes on separate line
1537: D202 No blank lines allowed *after* function docstring, found 1
1537: D205 Blank line missing between one-line summary and description
1537: D208 Docstring is over-indented
1568:9: E303 too many blank lines (2)
1606: D209 Put multi-line docstring closing quotes on separate line
1606: D202 No blank lines allowed *after* function docstring, found 1
1606: D205 Blank line missing between one-line summary and description
1606: D208 Docstring is over-indented
1637:9: E303 too many blank lines (2)
1675: D209 Put multi-line docstring closing quotes on separate line
1675: D202 No blank lines allowed *after* function docstring, found 1
1675: D205 Blank line missing between one-line summary and description
1675: D208 Docstring is over-indented
1694:9: E303 too many blank lines (2)
1712:9: E303 too many blank lines (2)
1744:1: E303 too many blank lines (3)
1744: D209 Put multi-line docstring closing quotes on separate line
1744: D202 No blank lines allowed *after* function docstring, found 1
1744: D205 Blank line missing between one-line summary and description
1748:13: E221 multiple spaces before operator
1749:11: E221 multiple spaces before operator
1779:15: E221 multiple spaces before operator
1789:1: E302 expected 2 blank lines, found 1
1806:49: E202 whitespace before ')'
1812:29: E222 multiple spaces after operator
1823:5: E303 too many blank lines (2)
1823:267: E221 multiple spaces before operator
1835:28: E231 missing whitespace after ','
1837:35: E231 missing whitespace after ','
1854:1: E302 expected 2 blank lines, found 1
1854: D202 No blank lines allowed *after* function docstring, found 1
1860:5: F841 local variable 'fld_type' is assigned to but never used
1864:280: E221 multiple spaces before operator
1888:36: E231 missing whitespace after ','
1888:70: E231 missing whitespace after ','
1888:83: E231 missing whitespace after ','
1888:93: E231 missing whitespace after ','
1906: D205 Blank line missing between one-line summary and description
1906: D208 Docstring is over-indented
1937:24: W601 .has_key() is deprecated, use 'in'
1939:72: E225 missing whitespace around operator
1969:1: E302 expected 2 blank lines, found 1
1969: D209 Put multi-line docstring closing quotes on separate line
1969: D202 No blank lines allowed *after* function docstring, found 1
1969: D205 Blank line missing between one-line summary and description
1974:11: E221 multiple spaces before operator
2013:1: E302 expected 2 blank lines, found 1
2013: D209 Put multi-line docstring closing quotes on separate line
2013: D202 No blank lines allowed *after* function docstring, found 1
2013: D205 Blank line missing between one-line summary and description
2019:11: E221 multiple spaces before operator
2046:1: E302 expected 2 blank lines, found 1
2046: D209 Put multi-line docstring closing quotes on separate line
2046: D202 No blank lines allowed *after* function docstring, found 1
2046: D205 Blank line missing between one-line summary and description
2062:74: E225 missing whitespace around operator
2072:18: E713 test for membership should be 'not in'
2085:1: E302 expected 2 blank lines, found 1
2085: D209 Put multi-line docstring closing quotes on separate line
2085: D202 No blank lines allowed *after* function docstring, found 1
2085: D205 Blank line missing between one-line summary and description
2091:11: E221 multiple spaces before operator
2117:1: E302 expected 2 blank lines, found 1
2117: D209 Put multi-line docstring closing quotes on separate line
2117: D202 No blank lines allowed *after* function docstring, found 1
2117: D205 Blank line missing between one-line summary and description
2124:5: F841 local variable 'name_1' is assigned to but never used
2125:5: F841 local variable 'name_2' is assigned to but never used
2130:1: E302 expected 2 blank lines, found 1
2130: D209 Put multi-line docstring closing quotes on separate line
2130: D202 No blank lines allowed *after* function docstring, found 1
2130: D205 Blank line missing between one-line summary and description
2136:11: E221 multiple spaces before operator
2143:24: E231 missing whitespace after ','
2150:9: E221 multiple spaces before operator
2157:23: W601 .has_key() is deprecated, use 'in'
2159:66: E221 multiple spaces before operator
2175:24: E231 missing whitespace after ','
2191:15: E221 multiple spaces before operator
2198:1: E302 expected 2 blank lines, found 1
2198: D202 No blank lines allowed *after* function docstring, found 1
2198: D400 First line should end with '.', not 's'
2203:1: E302 expected 2 blank lines, found 1
2203:31: E251 unexpected spaces around keyword / parameter equals
2203:33: E251 unexpected spaces around keyword / parameter equals
2203: D401 First line should be imperative: 'Return', not 'Returns'
2203: D209 Put multi-line docstring closing quotes on separate line
2203: D202 No blank lines allowed *after* function docstring, found 1
2203: D205 Blank line missing between one-line summary and description
2218:29: F841 local variable 'e' is assigned to but never used
2221:1: E302 expected 2 blank lines, found 1
2221: D103 Docstring missing
2231:29: F841 local variable 'e' is assigned to but never used
2235: D401 First line should be imperative: 'Return', not 'Returns'
2235: D202 No blank lines allowed *after* function docstring, found 1
2235: D400 First line should end with '.', not 'e'
2244: D401 First line should be imperative: 'Return', not 'Returns'
2244: D202 No blank lines allowed *after* function docstring, found 1
2244: D400 First line should end with '.', not 'e'
2253: D401 First line should be imperative: 'Return', not 'Returns'
2253: D202 No blank lines allowed *after* function docstring, found 1
2253: D400 First line should end with '.', not 'e'
2262: D401 First line should be imperative: 'Return', not 'Returns'
2262: D202 No blank lines allowed *after* function docstring, found 1
2262: D400 First line should end with '.', not 'e'
2270:1: E302 expected 2 blank lines, found 1
2270: D401 First line should be imperative: 'Return', not 'Returns'
2270: D202 No blank lines allowed *after* function docstring, found 1
2270: D400 First line should end with '.', not 'e'
2279: D401 First line should be imperative: 'Return', not 'Returns'
2279: D209 Put multi-line docstring closing quotes on separate line
2279: D202 No blank lines allowed *after* function docstring, found 1
2279: D205 Blank line missing between one-line summary and description
2297:29: F841 local variable 'e' is assigned to but never used
2300:1: E302 expected 2 blank lines, found 1
2300: D401 First line should be imperative: 'Return', not 'Returns'
2300: D209 Put multi-line docstring closing quotes on separate line
2300: D202 No blank lines allowed *after* function docstring, found 1
2300: D205 Blank line missing between one-line summary and description
2315:29: F841 local variable 'e' is assigned to but never used
2318:1: E302 expected 2 blank lines, found 1
2318: D401 First line should be imperative: 'Return', not 'Returns'
2318: D202 No blank lines allowed *after* function docstring, found 1
2318: D400 First line should end with '.', not 'd'
2327:29: F841 local variable 'e' is assigned to but never used
2330:1: E302 expected 2 blank lines, found 1
2330: D401 First line should be imperative: 'Return', not 'Returns'
2330: D202 No blank lines allowed *after* function docstring, found 1
2330: D400 First line should end with '.', not 'e'
2336:29: F841 local variable 'e' is assigned to but never used
2339:1: E302 expected 2 blank lines, found 1
2339:25: E251 unexpected spaces around keyword / parameter equals
2339:27: E251 unexpected spaces around keyword / parameter equals
2339: D401 First line should be imperative: 'Return', not 'Returns'
2339: D202 No blank lines allowed *after* function docstring, found 1
2339: D400 First line should end with '.', not 'e'
2350:29: F841 local variable 'e' is assigned to but never used
2353:1: E302 expected 2 blank lines, found 1
2353: D400 First line should end with '.', not 's'
2364:29: F841 local variable 'e' is assigned to but never used
2367:1: E302 expected 2 blank lines, found 1
2367: D202 No blank lines allowed *after* function docstring, found 1
2367: D400 First line should end with '.', not 's'
2374:1: E302 expected 2 blank lines, found 1
2374: D202 No blank lines allowed *after* function docstring, found 1
2374: D400 First line should end with '.', not 's'
2381:1: E302 expected 2 blank lines, found 1
2381: D202 No blank lines allowed *after* function docstring, found 1
2381: D400 First line should end with '.', not 'x'
2388:1: E302 expected 2 blank lines, found 1
2388: D202 No blank lines allowed *after* function docstring, found 1
2388: D400 First line should end with '.', not 's'
2397:1: E302 expected 2 blank lines, found 1
2397:21: E231 missing whitespace after ','
2397: D401 First line should be imperative: 'Remove', not 'Removes'
2397: D209 Put multi-line docstring closing quotes on separate line
2397: D202 No blank lines allowed *after* function docstring, found 1
2397: D205 Blank line missing between one-line summary and description
2408:9: F841 local variable 'res' is assigned to but never used
2413:1: E302 expected 2 blank lines, found 1
2413: D209 Put multi-line docstring closing quotes on separate line
2413: D202 No blank lines allowed *after* function docstring, found 1
2413: D400 First line should end with '.', not 'd'
2413: D205 Blank line missing between one-line summary and description
2420:9: F841 local variable 'res' is assigned to but never used
2425:1: E302 expected 2 blank lines, found 1
2425:24: E231 missing whitespace after ','
2425: D401 First line should be imperative: 'Remove', not 'Removes'
2425: D209 Put multi-line docstring closing quotes on separate line
2425: D202 No blank lines allowed *after* function docstring, found 1
2425: D205 Blank line missing between one-line summary and description
2432:9: F841 local variable 'res' is assigned to but never used
2437:1: E302 expected 2 blank lines, found 1
2437: D401 First line should be imperative: 'Delete', not 'Deletes'
2437: D209 Put multi-line docstring closing quotes on separate line
2437: D202 No blank lines allowed *after* function docstring, found 1
2437: D400 First line should end with '.', not 'd'
2437: D205 Blank line missing between one-line summary and description
2442:9: F841 local variable 'res' is assigned to but never used
2448: D401 First line should be imperative: 'Delete', not 'Deletes'
2448: D400 First line should end with '.', not 's'
2455:57: E261 at least two spaces before inline comment
2456:57: E261 at least two spaces before inline comment
2457:57: E261 at least two spaces before inline comment
2458:57: E261 at least two spaces before inline comment
2459:59: E261 at least two spaces before inline comment
2460:9: F841 local variable 'res' is assigned to but never used
2460:59: E261 at least two spaces before inline comment
2466: D401 First line should be imperative: 'Delete', not 'Deletes'
2466: D400 First line should end with '.', not 'n'
2466: D205 Blank line missing between one-line summary and description
2466: D208 Docstring is over-indented
2482: D401 First line should be imperative: 'Delete', not 'Deletes'
2482: D209 Put multi-line docstring closing quotes on separate line
2482: D202 No blank lines allowed *after* function docstring, found 1
2482: D400 First line should end with '.', not 'd'
2482: D205 Blank line missing between one-line summary and description
2490:9: F841 local variable 'res' is assigned to but never used
2495:1: E302 expected 2 blank lines, found 1
2495: D209 Put multi-line docstring closing quotes on separate line
2495: D202 No blank lines allowed *after* function docstring, found 1
2495: D205 Blank line missing between one-line summary and description
2583: D401 First line should be imperative: 'Create', not 'Creates'
2583: D205 Blank line missing between one-line summary and description
2583: D208 Docstring is over-indented
2606: D401 First line should be imperative: 'Drop', not 'Drops'
2606: D205 Blank line missing between one-line summary and description
2606: D208 Docstring is over-indented
2617: D401 First line should be imperative: 'Add', not 'Adds'
2617: D205 Blank line missing between one-line summary and description
2617: D208 Docstring is over-indented
2633: D401 First line should be imperative: 'Add', not 'Adds'
2633: D400 First line should end with '.', not 'f'
2633: D205 Blank line missing between one-line summary and description
2633: D208 Docstring is over-indented
2650: D401 First line should be imperative: 'Add', not 'Adds'
2650: D400 First line should end with '.', not 'x'
2655:9: F841 local variable 'res' is assigned to but never used
2661: D209 Put multi-line docstring closing quotes on separate line
2661: D202 No blank lines allowed *after* function docstring, found 1
2661: D205 Blank line missing between one-line summary and description
2670:9: F841 local variable 'res' is assigned to but never used
2678:1: E302 expected 2 blank lines, found 1
2678: D400 First line should end with '.', not 'e'
2678: D205 Blank line missing between one-line summary and description
2678: D208 Docstring is over-indented
2709: D202 No blank lines allowed *after* function docstring, found 1
2709: D400 First line should end with '.', not 'x'
2724: D401 First line should be imperative: 'Update', not 'Updates'
2724: D400 First line should end with '.', not 'x'
2724: D205 Blank line missing between one-line summary and description
2724: D208 Docstring is over-indented
2743: D400 First line should end with '.', not 'e'
2759:1: E302 expected 2 blank lines, found 1
2759: D202 No blank lines allowed *after* function docstring, found 1
2759: D400 First line should end with '.', not 'e'
2769: D400 First line should end with '.', not 'e'
2772:9: F841 local variable 'res' is assigned to but never used
2778: D400 First line should end with '.', not 'e'
2778: D205 Blank line missing between one-line summary and description
2778: D208 Docstring is over-indented
2794: D202 No blank lines allowed *after* function docstring, found 1
2794: D400 First line should end with '.', not 'e'
2794: D205 Blank line missing between one-line summary and description
2794: D208 Docstring is over-indented
2806:1: E302 expected 2 blank lines, found 1
2806: D202 No blank lines allowed *after* function docstring, found 1
2806: D400 First line should end with '.', not 'e'
2816: D202 No blank lines allowed *after* function docstring, found 1
2816: D400 First line should end with '.', not 'e'
2826: D202 No blank lines allowed *after* function docstring, found 1
2826: D400 First line should end with '.', not 'x'
2835:1: E302 expected 2 blank lines, found 1
2835: D209 Put multi-line docstring closing quotes on separate line
2835: D202 No blank lines allowed *after* function docstring, found 1
2835: D400 First line should end with '.', not 'd'
2835: D205 Blank line missing between one-line summary and description
2843:9: F841 local variable 'res' is assigned to but never used
2848:1: E302 expected 2 blank lines, found 1
2848: D202 No blank lines allowed *after* function docstring, found 1
2848: D205 Blank line missing between one-line summary and description
2848: D208 Docstring is over-indented
2858:9: F841 local variable 'res' is assigned to but never used
2863:1: E302 expected 2 blank lines, found 1
2863: D209 Put multi-line docstring closing quotes on separate line
2863: D205 Blank line missing between one-line summary and description
2872:9: F841 local variable 'res' is assigned to but never used
2877:1: E302 expected 2 blank lines, found 1
2877: D103 Docstring missing
2878:127: E261 at least two spaces before inline comment
2886:20: E211 whitespace before '['
2891:1: E302 expected 2 blank lines, found 1
2891: D103 Docstring missing