Allowing for main() to be divergent in embedded environments

Seems related to this thread, which proposed allowing main to have other return types for a totally different reason.