A: 

First thing i see right off, is that you have a separate rule for things like "home" and "home/", both of which go to the same place. In order to fix that, replace

RewriteRule ^home$ /index.php?module=home&action=frontpage
RewriteRule ^home/$ /index.php?module=home&action=frontpage

with

RewriteRule   ^home/?$   /index.php?module=home&action=frontpage

Repeat for all such duplicates, and you'll cut the number of rules almost in half.

You could also group some of the rules together, ones that use the same module, and rewrite all of them at once. For example, you could replace

RewriteRule ^handouts/?$ /index.php?module=home&action=handouts
RewriteRule ^links/?$ /index.php?module=home&action=links
RewriteRule ^contact/?$ /index.php?module=home&action=contact
RewriteRule ^copyright/?$ /index.php?module=home&action=copyright
RewriteRule ^cv/?$ /index.php?module=home&action=cv

RewriteRule ^login/?$ /index.php?module=authentication&action=login
RewriteRule ^logout/?$ /index.php?module=authentication&action=logout

with

RewriteRule ^(handouts|links|contact|copyright|cv)/?$   /index.php?module=home&action=$1
RewriteRule ^(log(in|out))/?$   /index.php?module=authentication&action=$1

You could do something similar with all your RedirectMatch rules. If your goal is to keep people from browsing through your stuff, you could either disable directory browsing, set your "no index" page to /, or (if you want to bounce every would-be index to /):

RedirectMatch 301   ^/(media|library)/([^/]+/)?$    /

Ideally, you'd want most of these rules in the actual config files for your site, if you can get them put there. (.htaccess rewrites can be quite slow, due to some magic Apache has to do to implement them.) But if your web host won't let you do that (and many won't), that's something you might just have to deal with.

cHao
A: 

You can combine some rules by modules and combine 2 lines: with and without ending / as /?

RewriteRule ^(handouts|links|contact|copyright|cv)/?$ /index.php?module=home&action=$1
RewriteRule ^(login|logout)/?$ /index.php?module=authentication&action=$1
RewriteRule ^error/?$ /index.php?module=error&action=error
RewriteRule ^release/?$ /index.php?module=release&action=release
how