Add missing Applicative instance for NEList

The instance behaves just like the one for `[a]`.

The lack of this instance definition triggers a compilation warning in GHC 7.8.3.

It's worth pointing out that the `semigroups` package, on which `opaleye` already depends indirectly, exports a “non-empty list” at [`Data.List.NonEmpty`](http://hackage.haskell.org/package/semigroups-0.15.4/docs/Data-List-NonEmpty.html). Unless there is a concrete need why `opaleye` needs to introduce `NEList` (there doesn't seem to be one), I suggest we use `Data.List.NonEmpty` from `semigroups` instead.