Removed btype 11 only source from code and updated readme to reflect this.
Removed retrn type of E.

-void E(int l,int d){...
+E(int l,int d){...
Moved variables closer to main.
Reduced I usage to one place. This lets me remove the macro and place it in the code.
Reduce character count -- s/memset/bzero/
Aligned definitions and function to spell inflate.

Rearranged variable names from a to t.
Added check to wget call to terminate on error.
Swapped subscript values in T macro.
Fixed statement expression variable issue with icc/pgcc/cc compilers.

If I declare a scoped variable inside the statement expression it
prevents segmentation faults on thee alternative compilers.

-#define L(n)({I(g<n){j=getchar();b|=j<<g;g+=8;}j=b&((1<<n)-1);b>>=n;g-=n;j;})
+#define L(n)({int z;I(g<n){z=getchar();b|=z<<g;g+=8;}z=b&((1<<n)-1);b>>=n;g-=n;z;})
The following expression needed to be wrapped in parenthesis otherwise
the loop inside L(n) will play up as | has lower precedence than <; <
will evaluated first.

- L(L(8)|L(8)<<8);
- L((L(8)|L(8)<<8));
Added list of tested compilers.