Added support for External authentication method

A new authentication mechanism is proposed, in which the user can implement his/her own *authenticate* method. 

~~**Note: it is not fully tested yet**(currently, it seems to authenticate properly, but the re-authentication using a real back-end has not been tested yet).~~  (see next comment)

To use it, the method AuthenticationMethod.EXTERNAL must be selected, and an implementation of the interface AuthenticationMethod.AccessProvider must be provided.


```
public class MyAccessProvider implements AuthenticationMethod.AccessProvider{

  	...
  	
	@Override
	public Access authenticate() {
		AccessBasic access = new AccessBasic();
    	access.setToken(...);
    	access.setUrl(...);
		return access ;
	}
}
```
	
It can be tested using this repository (and version 0.9.8-SNAPSHOT):
	
	<repositories>	
		<repository>
			<id>joss-mvn-repo</id>
			<url>https://raw.github.com/roikku/joss/mvn-repo/</url>
			<snapshots>
				<enabled>true</enabled>
				<updatePolicy>always</updatePolicy>
			</snapshots>
		</repository>
	</repositories>