libreddit: Compile as a shared-object

Note: This patch makes some fundamental changes to libreddit and the project, so definitely wait until others can say their thoughts before merging.

This patch changes the project to compile libreddit as a shared-object library instead of a static library. This change means we can use much better methods of controlling the exported symbols from libreddit. This also means that creddit is linked against the shared-object version of libreddit and thus has to be installed onto the system for creddit to be able to find it. A simple 'make; make install' (With make install run as root) will accomplish this. Additionally, when testing you can use LD_LIBRARY_PATH="./build" prefixed before running creddit to have the OS load the copy of libreddit in the ./build/ directory.

Compiling as a static library is still an option, it can be turned on using 'make STATIC=y'. The disadvantage is that the visibility options from GCC won't be used in the static library. It should however be simple enough to keep the symbols from colliding with creddit, so that shouldn't be a problem to make sure creddit doesn't break when compiling with 'STATIC=y' for those who want to keep compiling creddit as static.

It should also be noted, this patch reverses the pull request [here](https://github.com/Cotix/cReddit/pull/32). The usage of the GCC visibility extension removes the need to do the hacky solution using objcopy.