README: formatting fixes
Move AngelPS1::Plugin::TerminalSize to ::Term::Size (1/2)
Move AngelPS1::Plugin::TerminalSize to ::Term::Size (2/2)

Fix references.
Merge branch 'move/TerminalSize-to-Term-Size' into devel
Add --prompt option to load config from AngelPS1::Prompt::$value

The --prompt is a convenient way of loading a prompt that is
distributed from CPAN.
PS1.pl stays the default config with a fallback to
AngelPS1::Prompt::Default.
Early incomplete POD for bin/angel-PS1
Change config loading to load .PS1 files

Change config loading to allow loading from @INC:
- if -p:
  1. try an AngelPS1::Prompt::$prompt module
  2. try a $prompt.PS1 (usually ~/.config/angel-PS1)
  3. die
- if -c:
  1. try the given file
  2. die
- else
  1. try an AngelPS1::Prompt::$name module
  2. try $name.PS1 from @INC
  3. AngelPS1::Prompt::Default
Main loop: %prompt_state now stores between iterations

In angel-PS1 main loop, %prompt_state is now usable to store data accross
prompt displays.
Debugging: common code for flags parsing from APS1_DEBUG or --debug
Config: do not resolve $INC{$config} if CODE ref (fatpacked module)

If the prompt module is fatpacked, $INC{$config} returns a CODEREF.
This is not very useful for a human, so don't resolve $config in that
case and show just $config.
Change the shebang for the fatpacked script to "/usr/bin/env perl"
Add AngelPS1::Plugin::DateTime, with testsuite
Default prompt: use AngelPS1::Plugin::DateTime
Fix bug in Compiler::ps1_is_static

I started to write a testsuite for Compiler, without expecting to find a
bug so early!
Compiler: fix compact() for the empty list case in scalar context
Plugin::Core: fix MarginLeft, add a testsuite
Plugin::DateTime/Time: add prototype
Plugin::DateTime: add StrFTime, with tests
Plugin::Core/MarginLeft: add prototype, with tests
AngelPS1::Plugin: cleanup to almost empty