Changed how initial callback is called

This adds the inital callback onto the chain the same as all other callbacks, it
doesn't execute the callback right away.
Doc, critic fixes and small refactor
Fix tests
Updating build, added shipit
Update gitignore
Checking in changes prior to tagging of version 0.02.

Changelog diff is:

diff --git a/Changes b/Changes
index 090b8cb..a5bddf1 100644
--- a/Changes
+++ b/Changes
@@ -1,5 +1,9 @@
 Revision history for AnyEvent-Promise

+0.02    2014-03-26
+        Finalized on promise chain structure, fixed tests and added
+        documentation
+
 0.01    Date/time
         First version, released on an unsuspecting world.