major rewrite

- converted majority of core code into a standalone library
- begun work on separate CLI
- code reformatting in some places
- IRC library added
- new + expanded abstracts