New service method specs

Implementation for #45:

```go
// Different first arg
func (Service) SayHello(c endpoints.Context, req *Request, res *Response) error {}
// Response is created within the method and returned as the first value
func (Service) SayHello(c endpoints.Context, req *Request) (*Response, error) {}
```

The old method spec is kept for compatibility:
```go
func (Service) SayHello(r *http.Request, req *Request, res *Response) error {}
```

@campoy I'd be happy if you reviewed this change.