Fixed edge case in function for base class name

In the instance of calling the class snippet within a puppet file
located in /home/pjfoley/puppet/modules/profile/manifests/init.pp

I would expect the return value to be "profile", it currently returns
"profile::"

The extra "::" is a bug and puppet compilation fails with the message
"Syntax error at ':'
Fixed edge case in function for base class name

In the instance of calling the class snippet within a puppet file
located in /home/pjfoley/puppet/modules/profile/manifests/init.pp

I would expect the return value to be "profile", it currently returns
"profile::"

The extra "::" is a bug and puppet compilation fails with the message
"Syntax error at ':'
Merge branch 'hotfix/module_name' into hotfix/init_edge_case

Conflicts:
	UltiSnips/puppet.snippets
Fixed edge case with multiple init directories

In the instance of calling the class snippet within a puppet file
located in
/home/pjfoley/puppet/modules/profile/manifests/server/init/init.pp

I would expect the return value to be "profile::server::init", it
currently returns "profile::server" which is missing a module path
layer.
Merge pull request #85 from pjfoley/hotfix/init_edge_case

Hotfix/init edge case for puppet snippets.