Use _putenv_s instead of setenv on MSVC

This fixes commit 9194bc9174f98a11458d138cda7794550e262418
Merge pull request #12 from linquize/msvc

Use _putenv_s instead of setenv on MSVC
Prevent from including header content multiple times
Add copyright header in cangjieerrors.h
Change function return type to void to fix warning
Merge pull request #16 from linquize/no-return-value

Change function return type to void to fix warning
Merge pull request #15 from linquize/error-header-copyright

Add copyright header in cangjieerrors.h
Say libcangjie2 is a C library and use C89 syntax in example
Fix broken documentation URL
Merge pull request #17 from linquize/README-c89

Improve README.md

  1. Make the example C89 compatible.
  2. Fix broken documentation URL
  3. Minor documentation improvements.
Merge pull request #14 from linquize/include-twice

Merge branch 'include-twice' of https://github.com/linquize/libcangjie2
Prevent from including header content multiple times

Conflicts:
	src/cangjieerrors.h
Add cangjiecommon.h to put commonly used stuff into it

Currently, it includes necessary definitions for
1. calling the library from C++
2. Dynamic linking on MSVC
Also make it compile on both MinGW and MSVC
Add the return statement at the end of main to fix warning
Implement strtok_r for Windows
Merge pull request #19 from linquize/return-statement

Add the return statement at the end of main to fix warning
Merge pull request #20 from linquize/setenv

Support both MinGW and MSVC
Merge pull request #21 from linquize/extern-c-dllexport

Add cangjiecommon.h to put commonly used stuff into it
Fix distcheck

I renamed these files a while ago, but didn't update the Makefile.am...
Fix distcheck

The new cangjiecommon header needs to be added to the Makefile.am