Статья устарела и переписана, читайте новую статью.