Allow default indentation to be configured

This commit enables the default indentation method to be chosen by the developer, instead of being hard coded to a tab. An associated test is included.