[JENKINS-25389] Added tags option to Push command

New Pull-Request, after the #149 keeps waiting for the Jenkins build.
I also created a JIRA issue, but this is only the first part, after the git-client-plugin is extended, the git-plugin needs also some modifications to resolve the issue.

Once again, thanks for your feedback on the last ticket, I changed the tags() method to accept a boolean. 
Also thanks for telling me where to find examples for the test cases, I tried adding two tests, but had a slight problem:
```
assertTrue("tag1 wasn't pushed", bare.git.tagExists("tag1"));
assertTrue("tag2 wasn't pushed", bare.git.tagExists("tag2"));
```
This works for CliGitAPIImpl, but not for JGitAPIImp, I changed it to

```
assertTrue("tag1 wasn't pushed", bare.cmd("git tag").contains("tag1"));
assertTrue("tag2 wasn't pushed", bare.cmd("git tag").contains("tag2"));
```
This works for both, but I'm unsure why tagExists fails for JGit.