Initial carton supporting implementation
Fix for handling multiple carton paths

https://twitter.com/sugyan/status/444085819960090624
Cache Carton modules if new carton path equals to older
Improve Carton setup

Don't query setup carton path when it is called as function(not command)
Don't raise error

Because carton setup may be used as hook function.
Fix for directory check

Directory name should be end with `/`.
Update Document for default carton path
Update document
fix mode-name
Don't run more than 2 module search processes
Improve collect modules

This advice is given by sugyan.
Don't display warning unless executed as command
Merge pull request #13 from syohex/support-carton-setup

Initial carton supporting implementation