Multiple changes

- Added the wraper for dynamic libraries/shared objects.
- Added the macros for declaring exported library symbols.
- Minor updates to string and string refs.
- Minor updates to the type traits forwarding headers.
- Updated the gitignore file.