Correct bug in implementation of `Cheerio#val`

jQuery does not attempt to calculate the value of a `radio` input group.
Instead, when the value of such an element is queries, that element's
`value` attribute is returned directly.

Although slightly less convenient in some cases, this allows for direct
manipulation of `radio` input element values (which is otherwise
impossible).
implement jQuery's .has()
Fix bug in `css` method

When a callback function is provided as the second argument to the `css`
method, it should be invoked with each element's index and the value of
the specified CSS property (not the element itself).

From the jQuery API documentation on `css`:

> # .css( propertyName, function )
>
> **propertyName**
> Type: String
> A CSS property name.
>
> **function**
> Type: Function( Integer index, String value ) => String or Number
> A function returning the value to set. `this` is the current element.
> Receives the index position of the element in the set and the old
> value as arguments.

http://api.jquery.com/css/#css-propertyName-function
Remove unofficial signature of `children`

jQuery's implementation of the `children` method accepts an optional
selector--it does not treat Number values differently.

From the jQuery API documentation of `children`:

> # .children( [selector ] )
>
> Description: Get the children of each element in the set of matched
> elements, optionally filtered by a selector.

http://api.jquery.com/children/
Correct behavior of `after` and `before`

According to the jQuery API documentation, each of these methods should
be invoked with a second argument (mimicking the behavior of similar
signatures for `append` and `prepend`).
Correct unit test titles
Merge pull request #585 from jugglinmike/manip-callback-args

Correct behavior of `after` and `before`
bump htmlparser2 dependency to ~3.8.1
Merge pull request #590 from cvrebert/master

bump htmlparser2 dependency to ~3.8.1
Release 0.18.0
xyz@~0.5.0

Closes #592.
add license info to package.json
Merge pull request #594 from cvrebert/patch-1

add license info to package.json
pass options to $.html in toString

fixes #611
remove unnecessarily tricky code
Merge pull request #616 from davidchambers/straightforward

remove unnecessarily tricky code
Merge pull request #583 from jugglinmike/fix-css

Fix bug in `css` method
Merge pull request #544 from jugglinmike/fix-val

Correct bug in implementation of `Cheerio#val`
Merge pull request #584 from jugglinmike/fix-children

Remove unofficial signature of `children`
Clone input nodes when inserting over a set

This patch increases parity with jQuery, specifically in cases where
manipulation methods are called with existing nodes on sets containing
more than one element. In such cases, the provided node should be cloned
prior to insertion (excepting the final element in the set, where the
original node should be inserted).