Fix some warnings
Simplified config interface a bit

Also removed "getDictKeys" function
Cleaning up some utility code
Renamed readConfig to getConfig
Consolidated core system's config variables
Disentangling module imports a bit
cleaned up "module Lambdabot" exports
Extracted Nick and ChanName types into new modules
Changed privileged and ignored users sets to type `Set Nick`
Extracted OutputFilter type to its own module
Created MonadConfig class
Moved some "main"-like stuff from Lambdabot to Lambdabot.Main
Migrated "received" to live with "send"
Export all core config fields from Lambdabot.Main
Removed unnecesary usage of Chan type

Fixes #33
Use System.Timeout.timeout instead of a custom version
Remove catchIrc and handleIrc

They are just synonyms for Control.Monad.Error.catchError