Nodejs alias fixes

changes to NodeJSSourceModule so it includes alias references
 - changed the regex to include getAlias and getService, this will need to change again when we formalise the require alias/service requirements

One thing that's controversial that's worth highlighting: I've changed (temporarily) BundleSetBuilder to handle aliases that begin with "SERVICE!" differently from other aliases. Services referenced in a NodeJSSourceModule are internally prefixed with SERVICE! until the alias is dereferenced. This is so that we don't throw an exception if that 'alias' (service) can't be found since services can be defined at runtime. This is definitely a hack, but since it's internal I don't think it's a massive problem since we're formalising how services and aliases can be required soon. @dchambers this is something you need to look at make sure you're happy.

@sospirited these are the changes we're waiting on for the v0.5 release.