Use ${id}.pid as PID filename instead of fixed name
Merge pull request #68 from eagafonov/master

Use ${id}.pid as PID filename instead of fixed name
C2S per session user data & authreg auth API extensions

Changes:
1. SASL: embed sasl context (_sx_sasl_t) into a new struct sasl session context (_sx_sasl_sess_t) to hold the stream information for the sasl session and the global sasl context. The stream is then passed back to c2s on SASL auth where we can use the stream's tag to retrieve the session from c2s session hash.
2. Pass sess to all authreg functions except free().
3. Pass realm to create_challenge() in authreg.
4. Modify all storage/authreg_* files to account for new sess argument. The sess parameter in the existing authreg modules is basically ignored. 
 
Testing: 
1) Given the nature of the changes, testing on one DB platform should suffice. I tested it locally on sqlite. 
2) Compilation verification for on all but oracle and win32 (carefully looked through authreg_ntlogon and authreg_oracle code to make sure its correct)
Set authreg_private to NULL after calling free()
fixes #70

allows to provide a custom path for the openssl library. fix provided
by @monsterkane
Merge pull request #73 from lifeofguenter/patch-custom-ssl-dir

fixes #70: allow configure to accept custom path for openssl
Merge pull request #72 from sdebnath/authreg-ext

C2S per session user data & authreg auth API extensions
add bcrypt support - early commit
 - bcrypt improvements
 - Fix indents
 - Move crypt_blowfish to util/
 - Remove unnecessary files
Fix bcrypt
Cleanup session context for SASL only in _sx_sasl_free.

On authorization failures, the session context does not need to be freed
as the _sx_sasl_free is called anyways. We just need to free it there at
the end of the session's lifetime, otherwise we end up with double free.
Merge pull request #74 from sdebnath/sasl-fix

Cleanup session context for SASL only in _sx_sasl_free.
Improve bcrypt
Simplify crypt_blowfish dependency
Simplify crypt_blowfish
Move the session null asserts closer to usage.
Merge pull request #75 from sdebnath/fixes

Move the session null asserts closer to usage.

Operations that do not call onto authreg's new APIs, do not require session, so the asserts are not present in those cases: 
sx_sasl_cb_GET_REALM
sx_sasl_cb_GEN_AUTHZID
sx_sasl_cb_CHECK_MECH

They are present for the ones below because they are making call with the new session parameters.
sx_sasl_cb_GET_PASS
sx_sasl_cb_CHECK_PASS
sx_sasl_cb_CHECK_AUTHZID
Add bcrypt rehash support
Make plaintext default password storage type
sess_end for authreg to cleanup private data

Given that we now allow for authreg providers to store private data
in sess_st and it is an opaque object for c2s, we now call back
into authreg via sess_end to allow it to cleanup its internal data.