Rewritten gem in better Rubystyle and better browser/server support

Squashed commit of the following:

commit c14a8831aa6fa45c11a44c23586a660af0e91746
Author: botanicus <stastny@101ideas.cz>
Date:   Thu Jul 12 19:03:01 2012 +0100

    Should works now.

commit d2a9343820f10b65d786d98291f83a9c82938375
Author: botanicus <stastny@101ideas.cz>
Date:   Thu Jul 12 17:08:15 2012 +0100

    Preview works.

commit 2fd37ca22449fb438063210a7f3fe42b42e9837d
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:48:52 2012 +0100

    Let's use something which is made for parsing CLI and executing commands: Nake.

commit b1191030802c2e2a4e33757e862cd7f53b454fea
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:24:53 2012 +0100

    Improper indentation, doesn't make sense.

commit aa40db5fa3d7994d97e4fea3b58f786a9704c663
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:21:21 2012 +0100

    Kernel#abort does exactly this.

commit 5c05e768566e3ff9683ade4d7af8aff04fb9545b
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:20:57 2012 +0100

    Using this syntax is more fault-tolerant, easier to reuse without all the dependencies. Not that big deal in this case but still.

commit 4841827901fa6d6baff5e2bfe05781d12364f867
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:11:53 2012 +0100

    A bit more rubyish.

commit a15244a647c0d432d50e735aa339498741d36965
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:06:27 2012 +0100

    Ignore Gemfile.lock. This file SHOULD be included in projects such as sites, not really in libraries. Reasoning: in sites we test that our + lib code works together. In generic libraries we can just assume whatever version will be fine. If it's not the case, we specify range of versions in Gemspec or gemfile.

commit 799a8ff898cc28c8a9320104be3b287994a21488
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:03:39 2012 +0100

    No Rakefile, why Rake?

commit 6ca4b47845c86ad7eb3ec51d1c244cd356c33043
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:03:10 2012 +0100

    Duplicates. By saying 'gemspec', we're saying take a look to the gemspec and take the dependencies from there.

commit 4353778ca94aac0615f5427d06006ef992d39b66
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:02:10 2012 +0100

    Typo.

commit aa1b91f142bbb8ec73456577192fc27a0b165d83
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 11:01:11 2012 +0100

    If someone press Ctrl+c, he expects that this happens ;)

commit 17a22b8ee716e89922756b405a496d34ecdc9313
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 10:57:57 2012 +0100

    Tell users about private beta and how to get in. This message will be shown upon gem install apiary. @zzen check the message if it's alright like that.

commit c00d74396bb8ee66ea83a803ddf4e070b05b3f3d
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 10:51:55 2012 +0100

    In my oppinion it's good to use \n at the end of files, try to use unix tools such as grep in the project otherwise.

commit f4cee92b9afa20e0a9f458b2fb085c9f292cb05d
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 10:49:06 2012 +0100

    Ah, of course, project_root is missing.

commit 06408028a5e38d1ec44ab8096e46e3dfe20f3bee
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 10:47:33 2012 +0100

    I know, I used to do that too, thinking it's cool ... but think about it, you're introducing an unnecessary dependency, what if some poor guy doesn't have Git? Gemspec files should have no dependencies whatsoever.

commit a9a18de32138e0ac5a7fd18fb82415f8f1abcdb6
Author: botanicus <stastny@101ideas.cz>
Date:   Fri Jul 6 10:44:35 2012 +0100

    It's unix baby, let's make it executable!