Check whether a group is active on group refresh.

Check if the group is active when the group refresh is requested in the
Locator, instead of blindly adding it without any checks. Also, do not
assume that the group was removed if we cannot load it from the storage.
Move out all the Locator dependencies into inline files.

All the Locator dependencies, such as Routing and Synchronization, are
moved out into separate inline source files. Someday we might as well
move them to separate compilation units.
Fix building on GCC 4.4+

Obviously GCC can't really tell the difference between including a
header and including a source file from another source file. So if the
included source file had an anonymous namespace, GCC starts to complain
that you actually are including a header with anonymous namespaces.
Drop excess code.
Merge remote-tracking branch 'upstream/master' into StructuredLogs
License headers added.
Satisfy GCC 4.4.

 - drop taking address of rvalue reference.
GCC 4.4 has no std::map::emplace feature. Sad, but true.
Another GCC satisfy.

 - implicit `pair` <-> `tuple` conversion is not supported.
 - renaming done.
 - `log_property_t` is now `pair` instead of `tuple`.
Boost regex dependency added.
Revert the ability to specify absolute slave paths.

Do not always assume that the slave path is a relative path, instead
check whether it is absolute, in which case don't try to mangle with it.
Fixed the last commit for Boost < 1.46.

Use boost::filesystem::path::is_complete() instead of is_absolute(),
which is not available in Boost prior to version 1.46.
Revert RPC Channel changes breaking move semantics.

Constant unique pointers to streams in the channel disallowed moving it
with an operator=(channel&& other).
Merge branch 'master' of github.com:cocaine/cocaine-core
Catch more exceptions on slave spawning.

As slave spawning is handled by Isolate plugins, there's no way to
predict possible exception types, so catch more stuff, just in case.
Even more exception handling on slave spawning.
A more reasonable default value of grow threshold.

Default value queue_limit / pool_limit * concurrency may be more than queue_limit. It leads to the fact that available workers will not be started when they are needed. I have changed the value to queue_limit / pool_limit / 2. This value makes the runtime to run all available workers when the queue is half full.
Merge pull request #52 from andrusha97/master

A more reasonable default value of grow threshold.
Do not process messages in a dead channel.

Stop processing messages in the decoder, if it was destroyed while
processing a message in the same readable stream event iteration.
Changelog update.