do not force the permalink to be a dir if it ends on .html

Fixes #798.
test per-post permalinks

Add tests for setting a permalink on a post (in YAML frontmatter),
both the "old way" (generating an index.html) and with an .html ex-
tension.
Only generate excerpts if the excerpt_separator isn't blank
We don't need excerpts in jekyllrb.com
bugs in the site
Just clarifying the Post#should_generate_excerpt?
Docs about disabling excerpts.
Use .empty? instead of == ''
should_generate_excerpt? ~> generate_excerpt?
Add test for disabled excerpts
Fix 'undefined method `encoding` for "mailto"' errors w/ Ruby 1.8 and Kramdown > 0.14.0

When using Ruby 1.8.7 and Kramdown 0.14.0 and newer, the following build error
would occur if any page in your site contained a `<name@example.com>` email
address link:

Generating...   Conversion error: There was an error converting 'contribute.markdown'.
/Users/nick/Documents/puppet-docs/vendor/bundle/ruby/1.8/gems/kramdown-1.0.2/lib/kramdown/converter/html.rb:404:in `obfuscate': undefined method `encoding' for "mailto":String (NoMethodError)

See also:
http://rubyforge.org/tracker/index.php?func=detail&aid=29750&group_id=7403&atid=28673

This problem traced back to the following line in the Kramdown source:

result.force_encoding(text.encoding) if result.respond_to?(:force_encoding)

Strings aren't supposed to respond to the :force_encoding method in Ruby < 1.9,
but lib/jekyll/core_ext.rb was modifying the string class like so:

def force_encoding(enc)
  self
end

Strings still won't respond to :encoding, though, so we get an error when
Kramdown tries to read the incoming encoding and everything will blow up.

An ack of the codebase suggests that this was only added so we could force an
encoding for rdiscount on 1.9 without having to check whether we were running
under 1.8. Since testing for said method to learn whether one is running under a
1.9-like encoding regime seems to be a thing in libraries we rely on, we
shouldn't insert this dummy method without also dummying every other part of the
Ruby 1.9+ encoding system.

This commit removes the dummy :force_encoding method to stop poisoning core
classes for libraries we use, and moves the adjustment for 1.9-like encoding
regimes to the one place where it's needed.
Merge pull request #1397 from nfagerlund/error_187_undefined_method_encoding_for_mailto

Fix 'undefined method `encoding` for "mailto"' errors w/ Ruby 1.8 and Kramdown > 0.14.0
Update history to reflect merge of #1397
Merge pull request #1386 from mojombo/disable-excerpts

Disable automatically-generated excerpts with option
Update history to reflect merge of #1386
Correct the social dummie URLs

Twitter and Github seem to always force HTTPS. They don’t use backslashes after the username.
Merge pull request #1400 from penibelst/patch-1

Correct the social dummy URLs
Update history to reflect merge of #1400
Update dummy email address to example.com domain
Merge pull request #1408 from penibelst/master

Update dummy email address to example.com domain. Fix #1406